Add libgcrypt package
authorNicolas Thill <nico@openwrt.org>
Wed, 15 Jun 2005 00:12:55 +0000 (00:12 +0000)
committerNicolas Thill <nico@openwrt.org>
Wed, 15 Jun 2005 00:12:55 +0000 (00:12 +0000)
SVN-Revision: 1249

openwrt/package/Config.in
openwrt/package/Makefile
openwrt/package/libgcrypt/Config.in [new file with mode: 0644]
openwrt/package/libgcrypt/Makefile [new file with mode: 0644]
openwrt/package/libgcrypt/ipkg/libgcrypt.control [new file with mode: 0644]
openwrt/package/libgcrypt/patches/500-cross-compile.patch [new file with mode: 0644]

index d97da2fd5719a7dd01368e9c697fd8f2302c9356..d13a1b1bb196a30e82187183c50d4b4a12e0904c 100644 (file)
@@ -92,6 +92,7 @@ source "package/glib/Config.in"
 source "package/libdb/Config.in"
 source "package/libelf/Config.in"
 source "package/libevent/Config.in"
+source "package/libgcrypt/Config.in"
 source "package/libgd/Config.in"
 source "package/libgdbm/Config.in"
 source "package/gmp/Config.in"  # libgmp
index 06f26d60b9f5ab32fd52af396442f78655051bfd..01dcd3b86f588741f3aa897050a4720441c6e77c 100644 (file)
@@ -41,6 +41,7 @@ package-$(BR2_PACKAGE_LIBDB) += libdb
 package-$(BR2_PACKAGE_LIBELF) += libelf
 package-$(BR2_PACKAGE_LIBEVENT) += libevent
 package-$(BR2_PACKAGE_LIBFFI_SABLE) += libffi-sable
+package-$(BR2_PACKAGE_LIBGCRYPT) += libgcrypt
 package-$(BR2_PACKAGE_LIBGD) += libgd
 package-$(BR2_PACKAGE_LIBGDBM) += libgdbm
 package-$(BR2_PACKAGE_LIBGPG_ERROR) += libgpg-error
@@ -140,6 +141,7 @@ fprobe-compile: libpcap-compile
 gdb-compile: ncurses-compile
 kismet-compile: uclibc++-compile libpcap-compile ncurses-compile
 lcd4linux-compile: ncurses-compile
+libgcrypt-compile: libgpg-error-compile
 libgd-compile: libpng-compile
 libnet-compile: libpcap-compile
 libnids-compile: libnet-compile
diff --git a/openwrt/package/libgcrypt/Config.in b/openwrt/package/libgcrypt/Config.in
new file mode 100644 (file)
index 0000000..891dd56
--- /dev/null
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_LIBGCRYPT
+       tristate "libgcrypt - The GNU crypto library"
+#      default m if CONFIG_DEVEL
+       default n
+       select BR2_PACKAGE_LIBGPG_ERROR
+       help
+        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, Blowfish, CAST5, Twofish, Arcfour), hash 
+        algorithms (MD4, MD5, RIPE-MD160, SHA-1, TIGER-192), MACs (HMAC for all 
+        hash algorithms), public key algorithms (RSA, ElGamal, DSA), large 
+        integer functions, random numbers and a lot of supporting functions.
+        
+        http://directory.fsf.org/security/libgcrypt.html
+        
diff --git a/openwrt/package/libgcrypt/Makefile b/openwrt/package/libgcrypt/Makefile
new file mode 100644 (file)
index 0000000..8716448
--- /dev/null
@@ -0,0 +1,89 @@
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libgcrypt
+PKG_VERSION:=1.2.1
+PKG_RELEASE:=0
+PKG_MD5SUM:=b6d3217c9333c520fe54d2e8dc5e60ec
+
+PKG_SOURCE_URL:=http://ftp.gnupg.org/gcrypt/libgcrypt/
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_CAT:=bzcat
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,LIBGCRYPT,libgcrypt,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared
+       (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
+               $(TARGET_CONFIGURE_OPTS) \
+               CFLAGS="$(TARGET_CFLAGS)" \
+               CPPFLAGS="-I$(STAGING_DIR)/usr/include" \
+               LDFLAGS="-L$(STAGING_DIR)/usr/lib" \
+               ./configure \
+               --target=$(GNU_TARGET_NAME) \
+               --host=$(GNU_TARGET_NAME) \
+               --build=$(GNU_HOST_NAME) \
+               --program-prefix="" \
+               --program-suffix="" \
+               --prefix=/usr \
+               --exec-prefix=/usr \
+               --bindir=/usr/bin \
+               --datadir=/usr/share \
+               --includedir=/usr/include \
+               --infodir=/usr/share/info \
+               --libdir=/usr/lib \
+               --libexecdir=/usr/lib \
+               --localstatedir=/var \
+               --mandir=/usr/share/man \
+               --sbindir=/usr/sbin \
+               --sysconfdir=/etc \
+               $(DISABLE_NLS) \
+               $(DISABLE_LARGEFILE) \
+               --enable-shared \
+               --enable-static \
+               --disable-rpath \
+               --with-gpg-error-prefix="$(STAGING_DIR)/usr" \
+       );
+       touch $@
+
+$(PKG_BUILD_DIR)/.built: $(PKG_BUILD_DIR)/.configured
+       rm -rf $(PKG_INSTALL_DIR)
+       mkdir -p $(PKG_INSTALL_DIR)
+       $(MAKE) -C $(PKG_BUILD_DIR) \
+               DESTDIR="$(PKG_INSTALL_DIR)" \
+               all install
+       touch $@
+
+$(IPKG_LIBGCRYPT): $(STAGING_DIR)/usr/lib/libgcrypt.so
+       install -m0755 -d $(IDIR_LIBGCRYPT)/usr/lib
+       cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libgcrypt.so.* $(IDIR_LIBGCRYPT)/usr/lib/
+       $(RSTRIP) $(IDIR_LIBGCRYPT)
+       $(IPKG_BUILD) $(IDIR_LIBGCRYPT) $(PACKAGE_DIR)
+
+$(STAGING_DIR)/usr/lib/libgcrypt.so: $(PKG_BUILD_DIR)/.built
+       mkdir -p $(STAGING_DIR)/usr/bin
+       cp -fpR $(PKG_INSTALL_DIR)/usr/bin/libgcrypt-config $(STAGING_DIR)/usr/bin/
+       mkdir -p $(STAGING_DIR)/usr/include
+       cp -fpR $(PKG_INSTALL_DIR)/usr/include/gcrypt*.h $(STAGING_DIR)/usr/include/
+       mkdir -p $(STAGING_DIR)/usr/lib
+       cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libgcrypt.{a,so*} $(STAGING_DIR)/usr/lib/
+       mkdir -p $(STAGING_DIR)/usr/share/aclocal
+       cp -fpR $(PKG_INSTALL_DIR)/usr/share/aclocal/libgcrypt.m4 $(STAGING_DIR)/usr/share/aclocal/
+       touch $@
+
+install-dev: $(STAGING_DIR)/usr/lib/libgcrypt.so
+
+uninstall-dev:
+       rm -rf \
+               $(STAGING_DIR)/usr/bin/libgcrypt-config \
+               $(STAGING_DIR)/usr/include/gcrypt*.h \
+               $(STAGING_DIR)/usr/lib/libgcrypt.{a,so*} \
+               $(STAGING_DIR)/usr/share/aclocal/libgcrypt.m4 \
+
+compile: install-dev
+clean: uninstall-dev
diff --git a/openwrt/package/libgcrypt/ipkg/libgcrypt.control b/openwrt/package/libgcrypt/ipkg/libgcrypt.control
new file mode 100644 (file)
index 0000000..b66b03a
--- /dev/null
@@ -0,0 +1,10 @@
+Package: libgcrypt
+Priority: optional
+Section: libs
+Version: [TBDL]
+Architecture: [TBDL]
+Maintainer: OpenWrt Developers Team <bugs@openwrt.org>
+Source: http://openwrt.org/cgi-bin/viewcvs.cgi/openwrt/package/libgcrypt/
+Description: GNU crypto library
+Depends: libgpg-error
+
diff --git a/openwrt/package/libgcrypt/patches/500-cross-compile.patch b/openwrt/package/libgcrypt/patches/500-cross-compile.patch
new file mode 100644 (file)
index 0000000..e7d4d58
--- /dev/null
@@ -0,0 +1,24 @@
+diff -ruN libgcrypt-1.2.1-orig/tests/Makefile.am libgcrypt-1.2.1-1/tests/Makefile.am
+--- libgcrypt-1.2.1-orig/tests/Makefile.am     2004-03-03 09:08:05.000000000 +0100
++++ libgcrypt-1.2.1-1/tests/Makefile.am        2005-03-15 21:36:49.000000000 +0100
+@@ -21,7 +21,7 @@
+ TESTS = prime register ac basic tsexp keygen pubkey benchmark
+ INCLUDES = -I$(top_srcdir)/src
+-LDADD = ../src/libgcrypt.la
++LDADD = ../src/libgcrypt.la @LTLIBOBJS@ @GPG_ERROR_LIBS@
+ EXTRA_PROGRAMS = testapi
+ noinst_PROGRAMS = $(TESTS)
+diff -ruN libgcrypt-1.2.1-orig/tests/Makefile.in libgcrypt-1.2.1-1/tests/Makefile.in
+--- libgcrypt-1.2.1-orig/tests/Makefile.in     2005-01-05 14:53:23.000000000 +0100
++++ libgcrypt-1.2.1-1/tests/Makefile.in        2005-03-15 21:37:12.000000000 +0100
+@@ -258,7 +258,7 @@
+ target_vendor = @target_vendor@
+ TESTS = prime register ac basic tsexp keygen pubkey benchmark
+ INCLUDES = -I$(top_srcdir)/src
+-LDADD = ../src/libgcrypt.la
++LDADD = ../src/libgcrypt.la @LTLIBOBJS@ @GPG_ERROR_LIBS@
+ AM_CFLAGS = @GPG_ERROR_CFLAGS@
+ all: all-am