Hi!  This update gnutls to v2.0.0 and generally clean up the freewrt
build situation for gnutls.  Highlights:

* New packages 'libgnutlsxx' for C++ library.
* New packages 'libgnutls-extra' for extra library (not
  needed by most programs).
* Fixed dependencies
* Enable zlib + lzo compression support
* No need for freewrt patches
* Add srptool and psktool to gnutls-utils
* Enable SRP and anonymous ciphers (usually a good idea)

Btw, compiled for x86 I get the following package sizes:

GnuTLS:
  zlib 33kb
  libtasn1 26kb
  libgpg-error 5kb
  libgcrypt 140kb
  libgnutls 156kb
=> total 360kb

For comparison, OpenSSL is 596kb.

/Simon

Index: package/gnutls/patches/patch-doc_examples_Makefile_in
===================================================================
--- package/gnutls/patches/patch-doc_examples_Makefile_in       (revision 3566)
+++ package/gnutls/patches/patch-doc_examples_Makefile_in       (working copy)
@@ -1,19 +0,0 @@
-$FreeWRT$
---- gnutls-1.6.2.orig/doc/examples/Makefile.in 2007-04-18 14:35:11.000000000 
+0200
-+++ gnutls-1.6.2/doc/examples/Makefile.in      2007-05-14 20:35:44.000000000 
+0200
-@@ -54,11 +54,11 @@ POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
- target_triplet = @target@
--noinst_PROGRAMS = ex-cert-select$(EXEEXT) ex-client1$(EXEEXT) \
-+noinst_PROGRAMS = ex-cert-select$(EXEEXT) \
-       ex-client2$(EXEEXT) ex-client-resume$(EXEEXT) \
--      ex-client-tlsia$(EXEEXT) ex-crq$(EXEEXT) ex-serv1$(EXEEXT) \
--      ex-serv-anon$(EXEEXT) ex-serv-export$(EXEEXT) \
--      ex-serv-pgp$(EXEEXT) $(am__EXEEXT_1)
-+      ex-crq$(EXEEXT) ex-serv1$(EXEEXT) \
-+      ex-serv-export$(EXEEXT) \
-+      $(am__EXEEXT_1)
- subdir = doc/examples
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
Index: package/gnutls/ipkg/libgnutls.control
===================================================================
--- package/gnutls/ipkg/libgnutls.control       (revision 3566)
+++ package/gnutls/ipkg/libgnutls.control       (working copy)
@@ -2,4 +2,4 @@
 Priority: optional
 Section: libs
 Description: GNU TLS library
-Depends: libgcrypt, libtasn1, opencdk
+Depends: libgcrypt, libtasn1, zlib
Index: package/gnutls/ipkg/gnutls-utils.control
===================================================================
--- package/gnutls/ipkg/gnutls-utils.control    (revision 3566)
+++ package/gnutls/ipkg/gnutls-utils.control    (working copy)
@@ -2,4 +2,4 @@
 Priority: optional
 Section: admin
 Description: GNU TLS utilities
-Depends: libgnutls
+Depends: libgnutls, libgnutls-extra
Index: package/gnutls/Config.in
===================================================================
--- package/gnutls/Config.in    (revision 3566)
+++ package/gnutls/Config.in    (working copy)
@@ -9,8 +9,8 @@
        default n
        select FWRT_COMPILE_GNUTLS
        select FWRT_PACKAGE_LIBGCRYPT
-       select FWRT_PACKAGE_LIBOPENCDK
        select FWRT_PACKAGE_LIBTASN1
+       select FWRT_PACKAGE_ZLIB
        help
          GnuTLS is a project that aims to develop a library which provides a
          secure layer, over a reliable transport layer. Currently the GnuTLS
@@ -35,13 +35,15 @@
 
          http://www.gnu.org/software/gnutls/
 
-         This packages contains the GnuTLS shared libraries, needed by other 
programs.
+         This packages contains the core GnuTLS shared library,
+         needed by other programs.
 
 config FWRT_PACKAGE_GNUTLS_UTILS
-       prompt   "gnutls-utils.................... The GNU TLS utilities"
+       prompt "gnutls-utils...................... The GNU TLS utilities"
        tristate
        default n
        depends FWRT_PACKAGE_LIBGNUTLS
+       depends FWRT_PACKAGE_LIBGNUTLS_EXTRA
        help
          GnuTLS is a project that aims to develop a library which provides a
          secure layer, over a reliable transport layer. Currently the GnuTLS
@@ -66,10 +68,45 @@
 
          http://www.gnu.org/software/gnutls/
 
-         This packages contains some GnuTLS utilities.
+         This packages contains some GnuTLS command line utilities.
 
+config FWRT_PACKAGE_LIBGNUTLS_EXTRA
+       prompt "libgnutls-extra................... The GNU TLS extra library"
+       tristate
+       default n
+       depends FWRT_PACKAGE_LIBGNUTLS
+       depends FWRT_PACKAGE_LIBOPENCDK
+       depends FWRT_PACKAGE_LIBLZO
+       help
+         GnuTLS is a project that aims to develop a library which provides a
+         secure layer, over a reliable transport layer. Currently the GnuTLS
+         library implements the proposed standards by the IETF's TLS working
+         group.
+
+         Quoting from RFC2246 - the TLS 1.0 protocol specification:
+
+         "The TLS protocol provides communications privacy over the Internet.
+          The protocol allows client/server applications to communicate in a
+          way that is designed to prevent eavesdropping, tampering, or message
+          forgery."
+
+         Features
+
+           * Support for TLS 1.1 and SSL 3.0 protocols
+           * Support for TLS extensions
+           * Support for authentication using the SRP protocol
+           * Support for authentication using both X.509 certificates
+           * and OpenPGP keys Support for X.509 and OpenPGP certificate 
handling.
+           * Supports all the strong encryption algorithms
+
+         http://www.gnu.org/software/gnutls/
+
+         This packages contains the optional "extra" GnuTLS shared
+         library, needed by other programs, which contains OpenPGP,
+         TLS/IA and LZO2 compression.
+
 config FWRT_PACKAGE_LIBGNUTLS_OPENSSL
-       prompt   "libgnutls-openssl............... The GNU TLS OpenSSL 
compatibility layer library"
+       prompt "libgnutls-openssl................. The GNU TLS OpenSSL 
compatibility layer library"
        tristate
        default n
        depends FWRT_PACKAGE_LIBGNUTLS
@@ -97,4 +134,36 @@
 
          http://www.gnu.org/software/gnutls/
 
-         This packages contains the GnuTLS OpenSSL compatibility layer shared 
library.
+         This packages contains the GnuTLS OpenSSL compatibility
+         layer shared library.
+
+config FWRT_PACKAGE_LIBGNUTLSXX
+       prompt "libgnutlsxx....................... The GNU TLS C++ library"
+       tristate
+       default n
+       depends FWRT_PACKAGE_LIBGNUTLS
+       help
+         GnuTLS is a project that aims to develop a library which provides a
+         secure layer, over a reliable transport layer. Currently the GnuTLS
+         library implements the proposed standards by the IETF's TLS working
+         group.
+
+         Quoting from RFC2246 - the TLS 1.0 protocol specification:
+
+         "The TLS protocol provides communications privacy over the Internet.
+          The protocol allows client/server applications to communicate in a
+          way that is designed to prevent eavesdropping, tampering, or message
+          forgery."
+
+         Features
+
+           * Support for TLS 1.1 and SSL 3.0 protocols
+           * Support for TLS extensions
+           * Support for authentication using the SRP protocol
+           * Support for authentication using both X.509 certificates
+           * and OpenPGP keys Support for X.509 and OpenPGP certificate 
handling.
+           * Supports all the strong encryption algorithms
+
+         http://www.gnu.org/software/gnutls/
+
+         This packages contains the GnuTLS C++ shared library.
Index: package/gnutls/Makefile
===================================================================
--- package/gnutls/Makefile     (revision 3566)
+++ package/gnutls/Makefile     (working copy)
@@ -7,10 +7,10 @@
 include ${TOPDIR}/rules.mk
 
 PKG_NAME:=             gnutls
-PKG_VERSION:=          1.6.2
-PKG_RELEASE:=          3
-PKG_MD5SUM:=           1b224e4de5ac5ab89a2e53c7af9cf6b0
-DISTFILES:=            gnutls-1.6.2.tar.bz2
+PKG_VERSION:=          2.0.0
+PKG_RELEASE:=          1
+PKG_MD5SUM:=           181b2ff554a83e6cf85505ea16699d39
+DISTFILES:=            ${PKG_NAME}-${PKG_VERSION}.tar.bz2
 MASTER_SITES:=         ftp://ftp.gnutls.org/pub/gnutls/ \
                        ftp://ftp.gnupg.org/gcrypt/alpha/gnutls/ \
                        
http://www.mirrors.wiretapped.net/security/network-security/gnutls/ \
@@ -21,26 +21,23 @@
 
 $(eval $(call 
PKG_template,LIBGNUTLS,libgnutls,${PKG_VERSION}-${PKG_RELEASE},${ARCH}))
 $(eval $(call 
PKG_template,GNUTLS_UTILS,gnutls-utils,${PKG_VERSION}-${PKG_RELEASE},${ARCH}))
+$(eval $(call 
PKG_template,LIBGNUTLS_EXTRA,libgnutls-extra,${PKG_VERSION}-${PKG_RELEASE},${ARCH}))
 $(eval $(call 
PKG_template,LIBGNUTLS_OPENSSL,libgnutls-openssl,${PKG_VERSION}-${PKG_RELEASE},${ARCH}))
+$(eval $(call 
PKG_template,LIBGNUTLSXX,libgnutlsxx,${PKG_VERSION}-${PKG_RELEASE},${ARCH}))
 
 CONFIGURE_STYLE=       gnu
-CONFIGURE_ARGS+=       --disable-srp-authentication \
-                       --disable-anon-authentication \
-                       --disable-openpgp-authentication \
-                       --with-included-libcfg=yes \
-                       --without-zlib \
-                       --without-lzo
+CONFIGURE_ARGS+=       --without-libopencdk-prefix \
+                       --without-libz-prefix
 BUILD_STYLE=           auto
 INSTALL_STYLE=         auto
 
 post-install:
-       ${INSTALL_DIR} ${IDIR_LIBGNUTLS}/usr/lib
-       ${CP} ${WRKINST}/usr/lib/libgnutls{,-extra}.so.* 
${IDIR_LIBGNUTLS}/usr/lib/
-       ${INSTALL_DIR} ${IDIR_LIBGNUTLS_OPENSSL}/usr/lib
-       ${CP} ${WRKINST}/usr/lib/libgnutls-openssl.so.* \
-               ${IDIR_LIBGNUTLS_OPENSSL}/usr/lib/
-       ${INSTALL_DIR} ${IDIR_GNUTLS_UTILS}/usr/bin
-       ${CP} ${WRKINST}/usr/bin/certtool ${IDIR_GNUTLS_UTILS}/usr/bin/
-       ${CP} ${WRKINST}/usr/bin/gnutls-{cli,serv} ${IDIR_GNUTLS_UTILS}/usr/bin/
+       cd ${WRKINST} && ${PCP} usr/lib/libgnutls.so.* ${IDIR_LIBGNUTLS}/
+       cd ${WRKINST} && ${PCP} usr/lib/libgnutls-extra.so.* 
${IDIR_LIBGNUTLS_EXTRA}/
+       cd ${WRKINST} && ${PCP} usr/lib/libgnutls-openssl.so.* 
${IDIR_LIBGNUTLS_OPENSSL}/
+       cd ${WRKINST} && ${PCP} usr/lib/libgnutlsxx.so.* ${IDIR_LIBGNUTLSXX}/
+       cd ${WRKINST} && ${PCP} usr/bin/certtool ${IDIR_GNUTLS_UTILS}
+       cd ${WRKINST} && ${PCP} usr/bin/{srp,psk}tool ${IDIR_GNUTLS_UTILS}
+       cd ${WRKINST} && ${PCP} usr/bin/gnutls-{cli,serv} ${IDIR_GNUTLS_UTILS}
 
 include ${TOPDIR}/mk/pkg-bottom.mk
_______________________________________________
freewrt-developers mailing list
freewrt-developers@freewrt.org
https://www.freewrt.org/lists/listinfo/freewrt-developers

Reply via email to