diff --git a/extra/crypto++/PKGBUILD b/extra/crypto++/PKGBUILD
index fd63c2378..b1b2b326a 100644
--- a/extra/crypto++/PKGBUILD
+++ b/extra/crypto++/PKGBUILD
@@ -9,8 +9,6 @@
 #  - fix_build_system.patch to use libtool for compilation
 #  - removed making libcryptopp.so, adjusted packaging for .libs
 
-plugrel=1
-
 pkgname=crypto++
 pkgver=5.6.2
 _srcver=562
@@ -24,15 +22,15 @@ makedepends=('unzip')
 source=("http://www.cryptopp.com/cryptopp${_srcver}.zip"
         'libcrypto++.pc'
         'fix_build_system.patch')
-md5sums=('96cbeba0907562b077e26bcffb483828'
+md5sums=('7ed022585698df48e65ce9218f6c6a67'
          '46de3847c59ad16456fa863eb33e73b2'
-         '8d454c524bafc05aa842ddfc63d8431d')
+         '7ba22254fea73c1a9bd308ff6e034856')
 
 build() {
   cd ${srcdir}
 
   # ALARM
-  patch -p0 -i fix_build_system.patch
+  patch -p1 -i fix_build_system.patch
 
   sed -i -e 's/^CXXFLAGS/#CXXFLAGS/' GNUmakefile
   export CXXFLAGS="${CXXFLAGS} -DNDEBUG -fPIC"
diff --git a/extra/crypto++/fix_build_system.patch b/extra/crypto++/fix_build_system.patch
index 026c2bcd9..d6ae1ca0e 100644
--- a/extra/crypto++/fix_build_system.patch
+++ b/extra/crypto++/fix_build_system.patch
@@ -1,10 +1,10 @@
---- GNUmakefile
-+++ GNUmakefile
+--- cryptopp562/GNUmakefile
++++ cryptopp562/GNUmakefile
 @@ -1,3 +1,5 @@
 +LIBTOOL = libtool
 +LIBDIR = lib
  CXXFLAGS = -DNDEBUG -g -O2
- #CXXFLAGS = -g
+ # -O3 fails to link on Cygwin GCC version 4.5.3
  # -fPIC is supported. Please report any breakage of -fPIC as a bug.
 @@ -7,8 +9,9 @@
  # LDFLAGS += -Wl,--gc-sections
@@ -17,35 +17,19 @@
  EGREP = egrep
  UNAME = $(shell uname)
  ISX86 = $(shell uname -m | $(EGREP) -c "i.86|x86|i86|amd64")
-@@ -77,8 +80,11 @@
- CXXFLAGS += -pipe
+@@ -79,8 +82,11 @@
+ LDLIBS += -lws2_32
  endif
  
 +THREAD_LIBS =
 +
- ifeq ($(UNAME),Linux)
+ ifeq ($(IS_LINUX),1)
  LDFLAGS += -pthread
 +THREAD_LIBS += -lpthread
  ifneq ($(shell uname -i | $(EGREP) -c "(_64|d64)"),0)
  M32OR64 = -m64
  endif
-@@ -99,8 +105,6 @@
- ifeq ($(UNAME),SunOS)
- LDLIBS += -lnsl -lsocket
- M32OR64 = -m$(shell isainfo -b)
--endif
--
- ifneq ($(IS_SUN_CC),0)	# override flags for CC Sun C++ compiler
- CXXFLAGS = -DNDEBUG -O -g0 -native -template=no%extdef $(M32OR64)
- LDFLAGS =
-@@ -114,52 +118,52 @@
- CXXFLAGS += -DCRYPTOPP_INCLUDE_VECTOR_CC
- endif
- endif
-+endif
- 
- SRCS = $(wildcard *.cpp)
- ifeq ($(SRCS),)				# workaround wildcard function bug in GNU Make 3.77
+@@ -126,54 +132,52 @@
  SRCS = $(shell echo *.cpp)
  endif
  
@@ -62,12 +46,15 @@
 -LIBIMPORTOBJS = $(LIBOBJS:.o=.import.o)
 -TESTIMPORTOBJS = $(TESTOBJS:.o=.import.o)
 -DLLTESTOBJS = dlltest.dllonly.o
+-
+-all: cryptest.exe
+-static: libcryptopp.a
+-dynamic: libcryptopp.so
 +DLLOBJS = $(DLLSRCS:.cpp=.export.lo)
 +LIBIMPORTOBJS = $(LIBOBJS:.lo=.import.lo)
 +TESTIMPORTOBJS = $(TESTOBJS:.lo=.import.lo)
 +DLLTESTOBJS = dlltest.dllonly.lo
- 
--all: cryptest.exe
++
 +all: libcryptopp.la
  
 -test: cryptest.exe
@@ -76,27 +63,38 @@
 +	./cryptest v
  
  clean:
--	$(RM) cryptest.exe libcryptopp.a $(LIBOBJS) $(TESTOBJS) cryptopp.dll libcryptopp.dll.a libcryptopp.import.a cryptest.import.exe dlltest.exe $(DLLOBJS) $(LIBIMPORTOBJS) $(TESTIMPORTOBJS) $(DLLTESTOBJS)
-+	$(RM) -f .libs cryptest libcrypto++.* libcryptopp.* $(LIBOBJS) $(TESTOBJS) cryptopp.dll cryptest.import dlltest $(DLLOBJS) $(LIBIMPORTOBJS) $(TESTIMPORTOBJS) $(DLLTESTOBJS)
+-	-$(RM) cryptest.exe libcryptopp.a libcryptopp.so $(LIBOBJS) $(TESTOBJS) cryptopp.dll libcryptopp.dll.a libcryptopp.import.a cryptest.import.exe dlltest.exe $(DLLOBJS) $(LIBIMPORTOBJS) $(TESTI MPORTOBJS) $(DLLTESTOBJS)
++	$(RM) -f .libs cryptest libcryptopp.* libcryptopp.* $(LIBOBJS) $(TESTOBJS) cryptopp.dll cryptest.import dlltest $(DLLOBJS) $(LIBIMPORTOBJS) $(TESTIMPORTOBJS) $(DLLTESTOBJS)
++
  
  install:
 -	$(MKDIR) -p $(PREFIX)/include/cryptopp $(PREFIX)/lib $(PREFIX)/bin
--	$(CP) *.h $(PREFIX)/include/cryptopp
--	$(CP) *.a $(PREFIX)/lib
--	$(CP) *.so $(PREFIX)/lib
--	$(CP) *.exe $(PREFIX)/bin
+-	-$(CP) *.h $(PREFIX)/include/cryptopp
+-	-$(CP) *.a $(PREFIX)/lib
+-	-$(CP) *.so $(PREFIX)/lib
+-	-$(CP) *.exe $(PREFIX)/bin
++	$(MKDIR) -p $(DESTDIR)$(PREFIX)/include/cryptopp $(DESTDIR)$(PREFIX)/$(LIBDIR)
++	$(INSTALL) -m 644 *.h $(DESTDIR)$(PREFIX)/include/cryptopp
++	$(LN_S) cryptopp $(DESTDIR)$(PREFIX)/include/cryptopp
++	$(LIBTOOL) --mode=install $(INSTALL) libcryptopp.la $(DESTDIR)$(PREFIX)/$(LIBDIR)
++	$(LN_S) libcryptopp.a $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.a
++	$(LN_S) libcryptopp.so.0.0.0 $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.so
++	$(LN_S) libcryptopp.so.0.0.0 $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.so.0
++	$(LN_S) libcryptopp.so.0.0.0 $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.so.0.0.0
+ 
+ remove:
+-	-$(RM) -rf $(PREFIX)/include/cryptopp
+-	-$(RM) $(PREFIX)/lib/libcryptopp.a
+-	-$(RM) $(PREFIX)/lib/libcryptopp.so
+-	-$(RM) $(PREFIX)/bin/cryptest.exe
 -
 -libcryptopp.a: $(LIBOBJS)
 -	$(AR) $(ARFLAGS) $@ $(LIBOBJS)
 -	$(RANLIB) $@
-+	$(MKDIR) -p $(DESTDIR)$(PREFIX)/include/crypto++ $(DESTDIR)$(PREFIX)/$(LIBDIR)
-+	$(INSTALL) -m 644 *.h $(DESTDIR)$(PREFIX)/include/crypto++
-+	$(LN_S) crypto++ $(DESTDIR)$(PREFIX)/include/cryptopp
-+	$(LIBTOOL) --mode=install $(INSTALL) libcrypto++.la $(DESTDIR)$(PREFIX)/$(LIBDIR)
-+	$(LN_S) libcrypto++.a $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.a
-+	$(LN_S) libcrypto++.so.0.0.0 $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.so
-+	$(LN_S) libcrypto++.so.0.0.0 $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.so.0
-+	$(LN_S) libcrypto++.so.0.0.0 $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.so.0.0.0
++	$(RM) -rf $(DESTDIR)$(PREFIX)/include/cryptopp
++	$(RM) $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.a
++	$(RM) $(DESTDIR)$(PREFIX)/$(LIBDIR)/libcryptopp.so*
++	$(RM) $(DESTDIR)$(PREFIX)/bin/cryptest
  
 -libcryptopp.so: $(LIBOBJS)
 -	$(CXX) -shared -o $@ $(LIBOBJS)
@@ -104,7 +102,7 @@
 +	$(LIBTOOL) --tag=CXX --mode=link $(CXX) $(LDFLAGS) -rpath $(PREFIX)/$(LIBDIR) -o $@ $(LIBOBJS) $(THREAD_LIBS)
  
 -cryptest.exe: libcryptopp.a $(TESTOBJS)
--	$(CXX) -o $@ $(CXXFLAGS) $(TESTOBJS) -L. -lcryptopp $(LDFLAGS) $(LDLIBS)
+-	$(CXX) -o $@ $(CXXFLAGS) $(TESTOBJS) ./libcryptopp.a $(LDFLAGS) $(LDLIBS)
 +cryptest: libcryptopp.la $(TESTOBJS)
 +	$(LIBTOOL) --tag=CXX --mode=link $(CXX) $(LDFLAGS) -o $@ $(TESTOBJS) -L. -lcryptopp $(LDLIBS) $(THREAD_LIBS)
  
@@ -117,7 +115,7 @@
  
  cryptopp.dll: $(DLLOBJS)
  	$(CXX) -shared -o $@ $(CXXFLAGS) $(DLLOBJS) $(LDFLAGS) $(LDLIBS) -Wl,--out-implib=libcryptopp.dll.a
-@@ -168,10 +172,10 @@
+@@ -182,10 +186,10 @@
  	$(AR) $(ARFLAGS) $@ $(LIBIMPORTOBJS)
  	$(RANLIB) $@
  
@@ -130,7 +128,7 @@
  	$(CXX) -o $@ $(CXXFLAGS) $(DLLTESTOBJS) -L. -lcryptopp.dll $(LDFLAGS) $(LDLIBS)
  
  adhoc.cpp: adhoc.cpp.proto
-@@ -181,14 +185,14 @@
+@@ -195,14 +199,14 @@
  	touch adhoc.cpp
  endif