From 60fa21d157823b9c6ffd4a066d3afdd2f0224d17 Mon Sep 17 00:00:00 2001 From: Joshua Lock Date: Mon, 5 Jul 2010 15:38:23 +0100 Subject: [PATCH] beecrypt: upgrade to version 4.1.2 Add new patches to fix visiblity of C++ methods and to disable running a program to detect the ICU version. Signed-off-by: Joshua Lock --- .../beecrypt/beecrypt/disable-icu-check.patch | 41 ++++++++++++++++++ .../beecrypt/beecrypt/fix-security.patch | 43 +++++++++++++++++++ meta/packages/beecrypt/beecrypt/x64fix.patch | 13 +++--- .../{beecrypt_3.1.0.bb => beecrypt_4.1.2.bb} | 10 +++-- 4 files changed, 99 insertions(+), 8 deletions(-) create mode 100644 meta/packages/beecrypt/beecrypt/disable-icu-check.patch create mode 100644 meta/packages/beecrypt/beecrypt/fix-security.patch rename meta/packages/beecrypt/{beecrypt_3.1.0.bb => beecrypt_4.1.2.bb} (65%) diff --git a/meta/packages/beecrypt/beecrypt/disable-icu-check.patch b/meta/packages/beecrypt/beecrypt/disable-icu-check.patch new file mode 100644 index 0000000000..3e18a87c3f --- /dev/null +++ b/meta/packages/beecrypt/beecrypt/disable-icu-check.patch @@ -0,0 +1,41 @@ +We are unable to run code at configure time in a cross environemnt, but as we +control the build we can be fairly certain this dependency is met. + +JL 05/07/10 +Index: beecrypt-4.1.2/configure.ac +=================================================================== +--- beecrypt-4.1.2.orig/configure.ac 2004-12-21 11:37:56.000000000 +0000 ++++ beecrypt-4.1.2/configure.ac 2010-07-05 16:09:50.390083494 +0100 +@@ -243,32 +243,6 @@ + # Predefines and checks for C++ API support + AH_TEMPLATE([CPPGLUE],[Define to 1 if you want to include the C++ code]) + +-if test "$ac_with_cplusplus" = yes; then +- AC_MSG_CHECKING([for IBM's ICU library version >= 2.8]) +- AC_LANG_PUSH(C) +- AC_RUN_IFELSE([ +- AC_LANG_PROGRAM([[#include ]],[[ +- #if U_ICU_VERSION_MAJOR_NUM < 2 +- exit(1); +- #elif U_ICU_VERSION_MAJOR_NUM == 2 +- # if U_ICU_VERSION_MINOR_NUM < 8 +- exit(1); +- # else +- exit(0); +- # endif +- #else +- exit(0); +- #endif +- ]])],[ +- AC_MSG_RESULT([yes]) +- ],[ +- AC_MSG_RESULT([no]) +- AC_MSG_WARN([disabling cplusplus]) +- ac_with_cplusplus=no +- ]) +- AC_LANG_POP(C) +-fi +- + if test "$ac_with_cplusplus" = yes ; then + AC_DEFINE([CPPGLUE],1) + fi diff --git a/meta/packages/beecrypt/beecrypt/fix-security.patch b/meta/packages/beecrypt/beecrypt/fix-security.patch new file mode 100644 index 0000000000..6103562e0a --- /dev/null +++ b/meta/packages/beecrypt/beecrypt/fix-security.patch @@ -0,0 +1,43 @@ +Fix visibility of various C++ functions, inspired by a similar patch in the Fink +project: +http://www.mail-archive.com/fink-commits@lists.sourceforge.net/msg75742.html + +JL 05/07/10 +Index: beecrypt-4.1.2/c++/security/Security.h +=================================================================== +--- beecrypt-4.1.2.orig/c++/security/Security.h 2010-07-05 17:15:34.811273306 +0100 ++++ beecrypt-4.1.2/c++/security/Security.h 2010-07-05 17:15:38.696388531 +0100 +@@ -75,8 +75,6 @@ + public: + typedef vector provider_vector; + typedef provider_vector::iterator provider_vector_iterator; +- +- private: + struct spi + { + Object* cspi; +@@ -91,6 +89,7 @@ + static spi* getSpi(const String& algo, const String& type, const Provider&) throw (NoSuchAlgorithmException); + static spi* getFirstSpi(const String& type); + ++ private: + static const String& getKeyStoreDefault(); + + static bool _init; +Index: beecrypt-4.1.2/c++/beeyond/BeeCertificate.h +=================================================================== +--- beecrypt-4.1.2.orig/c++/beeyond/BeeCertificate.h 2004-11-03 09:37:27.000000000 +0000 ++++ beecrypt-4.1.2/c++/beeyond/BeeCertificate.h 2010-07-05 17:16:25.216332324 +0100 +@@ -150,11 +150,11 @@ + mutable String* str; + + BeeCertificate(); +- BeeCertificate(InputStream& in) throw (IOException); + + bytearray* encodeTBS() const; + + public: ++ BeeCertificate(InputStream& in) throw (IOException); + BeeCertificate(const BeeCertificate&); + virtual ~BeeCertificate(); + diff --git a/meta/packages/beecrypt/beecrypt/x64fix.patch b/meta/packages/beecrypt/beecrypt/x64fix.patch index 9ee75c1404..ac02425d51 100644 --- a/meta/packages/beecrypt/beecrypt/x64fix.patch +++ b/meta/packages/beecrypt/beecrypt/x64fix.patch @@ -1,15 +1,18 @@ -Index: beecrypt-3.1.0/configure.ac +Don't have 64 appended to the libdir for 64bit platforms. + +JL 05/07/10 +Index: beecrypt-4.1.2/configure.ac =================================================================== ---- beecrypt-3.1.0.orig/configure.ac 2008-08-16 12:08:02.000000000 +0100 -+++ beecrypt-3.1.0/configure.ac 2008-08-16 12:08:26.000000000 +0100 -@@ -754,15 +754,6 @@ +--- beecrypt-4.1.2.orig/configure.ac 2010-07-05 16:39:43.000000000 +0100 ++++ beecrypt-4.1.2/configure.ac 2010-07-05 16:40:27.521082866 +0100 +@@ -585,15 +585,6 @@ # Check where to install the libraries bc_libalt= -case $target_os in -linux*) - case $bc_target_arch in -- alpha* | powerpc64 | s390x | x86_64) +- powerpc64 | s390x | x86_64) - bc_libalt="64" - ;; - esac diff --git a/meta/packages/beecrypt/beecrypt_3.1.0.bb b/meta/packages/beecrypt/beecrypt_4.1.2.bb similarity index 65% rename from meta/packages/beecrypt/beecrypt_3.1.0.bb rename to meta/packages/beecrypt/beecrypt_4.1.2.bb index 2b2b46138a..6eb40e5d5d 100644 --- a/meta/packages/beecrypt/beecrypt_3.1.0.bb +++ b/meta/packages/beecrypt/beecrypt_4.1.2.bb @@ -5,13 +5,17 @@ DESCRIPTION="Beecrypt is a general-purpose cryptography library." HOMEPAGE="http://sourceforge.net/projects/beecrypt" SRC_URI="${SOURCEFORGE_MIRROR}/beecrypt/beecrypt-${PV}.tar.gz \ - file://x64fix.patch;patch=1" + file://x64fix.patch \ + file://disable-icu-check.patch \ + file://fix-security.patch" -PR = "r1" +DEPENDS = "icu" + +PR = "r0" inherit autotools acpaths="" -EXTRA_OECONF="--with-arch=${TARGET_ARCH} --enable-shared --enable-static" +EXTRA_OECONF="--with-arch=${TARGET_ARCH} --without-python --enable-shared --enable-static" BBCLASSEXTEND = "native"