#
-# Copyright (C) 2005-2010 OpenWrt.org
+# Copyright (C) 2005-2011 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=libgcrypt
-PKG_VERSION:=1.4.5
+PKG_VERSION:=1.5.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_SOURCE_URL:=ftp://ftp.gnupg.org/gcrypt/libgcrypt/
-PKG_MD5SUM:=cc2017ad09b4543f8b3b5e9a53cfd89d
+PKG_SOURCE_URL:=ftp://ftp.gnupg.org/gcrypt/libgcrypt
+PKG_MD5SUM:=693f9c64d50c908bc4d6e01da3ff76d8
PKG_FIXUP:=libtool no-autoreconf
PKG_INSTALL:=1
endef
define Package/libgcrypt/description
- This is a general purpose cryptographic library based on the code from
- GnuPG. It provides functions for all cryptograhic building blocks:
- symmetric ciphers (AES, DES, Arcfour), hash algorithms (MD5, SHA-1,
+ This is a general purpose cryptographic library based on the code from
+ GnuPG. It provides functions for all cryptograhic building blocks:
+ symmetric ciphers (AES, DES, Arcfour, CAST5), hash algorithms (MD5, SHA-1,
RIPE-MD160, SHA-224/256, SHA-384/512), MACs (HMAC for all hash
algorithms), public key algorithms (RSA, DSA), large integer functions,
random numbers and a lot of supporting functions. Some algorithms have
- been disabled to reduce size (Blowfish, CAST5, Twofish, Serpent,
+ been disabled to reduce size (Blowfish, Twofish, Serpent,
RC2, SEED, Camellia, CRC, MD4, TIGER-192, Whirlpool, ElGamal, ECC).
endef
--disable-asm \
--with-gpg-error-prefix="$(STAGING_DIR)/usr" \
--enable-digests="md5 rmd160 sha1 sha256 sha512" \
- --enable-ciphers="arcfour des aes" \
- --enable-pubkey-ciphers="rsa dsa" \
+ --enable-ciphers="arcfour des aes cast5" \
+ --enable-pubkey-ciphers="rsa dsa"
TARGET_CFLAGS += $(FPIC)
+++ /dev/null
-The MIPS port for GCC-4.4 no longer recognizes the h asm constraint.
-Patch from: https://forum.openwrt.org/viewtopic.php?id=20520
-
---- a/mpi/longlong.h
-+++ b/mpi/longlong.h
-@@ -710,18 +710,35 @@ extern USItype __udiv_qrnnd ();
- #endif /* __m88110__ */
- #endif /* __m88000__ */
-
-+/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */
-+#if defined (__GNUC__) && defined (__GNUC_MINOR__)
-+#define __GNUC_PREREQ(maj, min) \
-+ ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
-+#else
-+#define __GNUC_PREREQ(maj, min) 0
-+#endif
-+
- /***************************************
- ************** MIPS *****************
- ***************************************/
- #if defined (__mips__) && W_TYPE_SIZE == 32
--#if __GNUC__ > 2 || __GNUC_MINOR__ >= 7
-+#if __GNUC_PREREQ (4,4)
-+#define umul_ppmm(w1, w0, u, v) \
-+ do { \
-+ UDItype __ll = (UDItype)(u) * (v); \
-+ w1 = __ll >> 32; \
-+ w0 = __ll; \
-+ } while (0)
-+#endif
-+#if !defined (umul_ppmm) && __GNUC_PREREQ (2,7)
- #define umul_ppmm(w1, w0, u, v) \
- __asm__ ("multu %2,%3" \
- : "=l" ((USItype)(w0)), \
- "=h" ((USItype)(w1)) \
- : "d" ((USItype)(u)), \
- "d" ((USItype)(v)))
--#else
-+#endif
-+#if !defined (umul_ppmm)
- #define umul_ppmm(w1, w0, u, v) \
- __asm__ ("multu %2,%3 \n" \
- "mflo %0 \n" \
-@@ -739,14 +756,24 @@ extern USItype __udiv_qrnnd ();
- ************** MIPS/64 **************
- ***************************************/
- #if (defined (__mips) && __mips >= 3) && W_TYPE_SIZE == 64
--#if __GNUC__ > 2 || __GNUC_MINOR__ >= 7
-+#if __GNUC_PREREQ (4,4)
-+#define umul_ppmm(w1, w0, u, v) \
-+ do { \
-+ typedef unsigned int __ll_UTItype __attribute__((mode(TI))); \
-+ __ll_UTItype __ll = (__ll_UTItype)(u) * (v); \
-+ w1 = __ll >> 64; \
-+ w0 = __ll; \
-+ } while (0)
-+#endif
-+#if !defined (umul_ppmm) && __GNUC_PREREQ (2,7)
- #define umul_ppmm(w1, w0, u, v) \
- __asm__ ("dmultu %2,%3" \
- : "=l" ((UDItype)(w0)), \
- "=h" ((UDItype)(w1)) \
- : "d" ((UDItype)(u)), \
- "d" ((UDItype)(v)))
--#else
-+#endif
-+#if !defined (umul_ppmm)
- #define umul_ppmm(w1, w0, u, v) \
- __asm__ ("dmultu %2,%3 \n" \
- "mflo %0 \n" \
--- /dev/null
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -22,8 +22,8 @@ AUTOMAKE_OPTIONS = dist-bzip2
+ DISTCHECK_CONFIGURE_FLAGS = --enable-random-daemon \
+ --enable-ciphers=arcfour:blowfish:cast5:des:aes:twofish:serpent:rfc2268:seed:camellia
+
+-DIST_SUBDIRS = m4 compat mpi cipher random src doc tests
+-SUBDIRS = compat mpi cipher random src doc tests
++DIST_SUBDIRS = m4 compat mpi cipher random src
++SUBDIRS = compat mpi cipher random src
+ EXTRA_DIST = autogen.sh README.SVN
+ DISTCLEANFILES =
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -281,8 +281,8 @@ AUTOMAKE_OPTIONS = dist-bzip2
+ DISTCHECK_CONFIGURE_FLAGS = --enable-random-daemon \
+ --enable-ciphers=arcfour:blowfish:cast5:des:aes:twofish:serpent:rfc2268:seed:camellia
+
+-DIST_SUBDIRS = m4 compat mpi cipher random src doc tests
+-SUBDIRS = compat mpi cipher random src doc tests
++DIST_SUBDIRS = m4 compat mpi cipher random src
++SUBDIRS = compat mpi cipher random src
+ EXTRA_DIST = autogen.sh README.SVN
+ DISTCLEANFILES =
+ all: config.h
+++ /dev/null
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -22,8 +22,8 @@ AUTOMAKE_OPTIONS = dist-bzip2
- DISTCHECK_CONFIGURE_FLAGS = --enable-random-daemon \
- --enable-ciphers=arcfour:blowfish:cast5:des:aes:twofish:serpent:rfc2268:seed:camellia
-
--DIST_SUBDIRS = m4 mpi cipher random src doc tests
--SUBDIRS = mpi cipher random src doc tests
-+DIST_SUBDIRS = m4 mpi cipher random src
-+SUBDIRS = mpi cipher random src
- EXTRA_DIST = autogen.sh README.SVN
- DISTCLEANFILES =
-
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -239,8 +239,8 @@ AUTOMAKE_OPTIONS = dist-bzip2
- DISTCHECK_CONFIGURE_FLAGS = --enable-random-daemon \
- --enable-ciphers=arcfour:blowfish:cast5:des:aes:twofish:serpent:rfc2268:seed:camellia
-
--DIST_SUBDIRS = m4 mpi cipher random src doc tests
--SUBDIRS = mpi cipher random src doc tests
-+DIST_SUBDIRS = m4 mpi cipher random src
-+SUBDIRS = mpi cipher random src
- EXTRA_DIST = autogen.sh README.SVN
- DISTCLEANFILES =
- all: config.h