From: Bernd Kuhls Date: Sun, 11 Jun 2017 12:48:51 +0000 (+0200) Subject: package/beecrypt: remove c++ support X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=dd4d3c18d6753e1224fbe59d91a4b44f39bc38c0;p=buildroot.git package/beecrypt: remove c++ support Optional C++ support depends on icu, the icu version bump to 59.1 brought ABI-breaking changes http://site.icu-project.org/download/59#TOC-char16_t-in-C- which are incompatible with beecrypt. Since beecrypt did not get any updates upstream since 2009 and no package uses beecrypt's C++ support we disable this broken option. With C++ support removed patches 0002 & 0004 are not needed anymore. Fixes http://autobuild.buildroot.net/results/a1a/a1ad507371192ddecacab0df91f7b2a84c7c288d/ Signed-off-by: Bernd Kuhls Signed-off-by: Thomas Petazzoni --- diff --git a/Config.in.legacy b/Config.in.legacy index 361d331dc9..ec28da3a2a 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -145,6 +145,13 @@ endif ############################################################################### comment "Legacy options removed in 2017.08" +config BR2_PACKAGE_BEECRYPT_CPP + bool "C++ support removed in beecrypt" + select BR2_LEGACY + help + Support for C++ depends on icu. The beecrypt package is + incompatible with icu 59+. + config BR2_PACKAGE_SPICE_CLIENT bool "spice client support removed" select BR2_LEGACY diff --git a/package/beecrypt/0002-build-system.patch b/package/beecrypt/0002-build-system.patch new file mode 100644 index 0000000000..05746899ef --- /dev/null +++ b/package/beecrypt/0002-build-system.patch @@ -0,0 +1,173 @@ +Fix build with BR2_ENABLE_DEBUG=yes, no need for expert mode anymore + +Otherwise configure issues this error message: +configure: error: --enable-debug cannot be used in conjunction with --enable-expert-mode + +Downloaded from Gentoo: +http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/beecrypt/files/beecrypt-4.2.1-build-system.patch?revision=1.2&view=markup + +This patch also removes the hard-coded CFLAGS provided by beecrypt in favour +of the CFLAGS provided by buildroot. + +Signed-off-by: Bernd Kuhls + +--- beecrypt-4.2.1/configure.ac ++++ beecrypt-4.2.1/configure.ac +@@ -11,7 +11,7 @@ + + # Checks for package options + AC_ARG_ENABLE(expert-mode, [ --enable-expert-mode follow user-defined CFLAGS settings [[default=no]]],[ +- ac_enable_expert_mode=yes ++ ac_enable_expert_mode=$enableval + ],[ + if test "X$CFLAGS" != "X"; then + echo "enabling expert mode" +@@ -25,7 +25,7 @@ + if test "$ac_enable_expert_mode" = yes; then + AC_MSG_ERROR([--enable-debug cannot be used in conjunction with --enable-expert-mode]) + fi +- ac_enable_debug=yes ++ ac_enable_debug=$enableval + ],[ + ac_enable_debug=no + ]) +@@ -456,7 +456,7 @@ + ac_cv_python_include="-I`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_inc()'`" + ]) + AC_CACHE_CHECK([where to install python libraries], ac_cv_python_libdir, [ +- ac_cv_python_libdir=`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()'` ++ ac_cv_python_libdir=`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1, 0)'` + ]) + fi + fi +--- beecrypt-4.2.1/acinclude.m4 ++++ beecrypt-4.2.1/acinclude.m4 +@@ -498,15 +498,6 @@ AC_DEFUN([BEE_GNU_CC],[ + AC_SUBST(OPENMP_LIBS,"-lgomp") + fi + case $bc_target_arch in +- x86_64 | athlon64 | athlon-fx | k8 | opteron | em64t | nocona) +- CC="$CC -m64" +- ;; +- i[[3456]]86 | \ +- pentium* | \ +- athlon*) +- CC="$CC -m32" +- CCAS="$CCAS -m32" +- ;; + ia64) + case $target_os in + # HP/UX on Itanium needs to be told that a long is 64-bit! +@@ -525,17 +516,8 @@ AC_DEFUN([BEE_GNU_CC],[ + aix*) + CC="$CC -maix64" + ;; +- linux*) +- CC="$CC -m64" +- ;; + esac + ;; +- sparc | sparcv8*) +- CC="$CC -m32" +- ;; +- sparc64 | sparcv9*) +- CC="$CC -m64" +- ;; + esac + # Certain platforms needs special flags for multi-threaded code + if test "$ac_enable_threads" = yes; then +@@ -646,14 +646,6 @@ dnl BEE_GNU_CXX + AC_DEFUN([BEE_GNU_CXX],[ + AC_REQUIRE([AC_PROG_CXX]) + case $bc_target_arch in +- x86_64 | athlon64 | athlon-fx | k8 | opteron | em64t | nocona | core2) +- CXX="$CXX -m64" +- ;; +- i[[3456]]86 | \ +- pentium* | \ +- athlon*) +- CXX="$CXX -m32" +- ;; + ia64) + case $target_os in + # HP/UX on Itanium needs to be told that a long is 64-bit! +@@ -672,17 +664,8 @@ AC_DEFUN([BEE_GNU_CXX],[ + aix*) + CXX="$CXX -maix64" + ;; +- linux*) +- CXX="$CXX -m64" +- ;; + esac + ;; +- sparc | sparcv8*) +- CXX="$CXX -m32" +- ;; +- sparc64 | sparcv9*) +- CXX="$CXX -m64" +- ;; + esac + # Certain platforms needs special flags for multi-threaded code + if test "$ac_enable_threads" = yes; then +--- beecrypt-4.2.1/java/Makefile.am ++++ beecrypt-4.2.1/java/Makefile.am +@@ -26,7 +26,7 @@ + + INCLUDES = -I$(top_srcdir)/include + +-libaltdir=$(prefix)/lib@LIBALT@ ++libaltdir=$(libdir) + + libalt_LTLIBRARIES = libbeecrypt_java.la + +--- beecrypt-4.2.1/acinclude.m4 ++++ beecrypt-4.2.1/acinclude.m4 +@@ -1589,20 +1589,5 @@ + AC_SUBST(TYPEDEF_BC_THREADID_T,$bc_typedef_bc_threadid_t) + ]) +- +-AH_BOTTOM([ +-#if ENABLE_THREADS +-# ifndef _REENTRANT +-# define _REENTRANT +-# endif +-# if LINUX +-# define _LIBC_REENTRANT +-# endif +-#else +-# ifdef _REENTRANT +-# undef _REENTRANT +-# endif +-#endif +-]) + + + dnl BEE_THREAD_LOCAL_STORAGE +@@ -1623,7 +1609,5 @@ + ]) + + AH_BOTTOM([ +-#if !ENABLE_THREAD_LOCAL_STORAGE +-# define __thread +-#endif ++#include "config.threads.h" + ]) +--- beecrypt-4.2.1/config.threads.h ++++ beecrypt-4.2.1/config.threads.h +@@ -0,0 +1,16 @@ ++#if ENABLE_THREADS ++# ifndef _REENTRANT ++# define _REENTRANT ++# endif ++# if LINUX ++# define _LIBC_REENTRANT ++# endif ++#else ++# ifdef _REENTRANT ++# undef _REENTRANT ++# endif ++#endif ++ ++#if !ENABLE_THREAD_LOCAL_STORAGE ++# define __thread ++#endif diff --git a/package/beecrypt/0002-icu-check-cross-compile.patch b/package/beecrypt/0002-icu-check-cross-compile.patch deleted file mode 100644 index cc02116506..0000000000 --- a/package/beecrypt/0002-icu-check-cross-compile.patch +++ /dev/null @@ -1,31 +0,0 @@ -configure: Use AC_COMPILE_IFELSE for ICU check for cross compilation compat - -AC_RUN_IFELSE doesn't work when cross compiling, but we can do the -check in the preprocessor instead, so use AC_COMPILE_IFELSE instead. - -Signed-off-by: Peter Korsgaard ---- - configure.ac | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -Index: beecrypt-4.2.1/configure.ac -=================================================================== ---- beecrypt-4.2.1.orig/configure.ac -+++ beecrypt-4.2.1/configure.ac -@@ -295,13 +295,13 @@ - 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_COMPILE_IFELSE([ - AC_LANG_PROGRAM([[#include ]],[[ - #if U_ICU_VERSION_MAJOR_NUM < 2 -- exit(1); -+ #error too old - #elif U_ICU_VERSION_MAJOR_NUM == 2 - # if U_ICU_VERSION_MINOR_NUM < 8 -- exit(1); -+ #error too old - # else - exit(0); - # endif diff --git a/package/beecrypt/0003-build-system.patch b/package/beecrypt/0003-build-system.patch deleted file mode 100644 index 05746899ef..0000000000 --- a/package/beecrypt/0003-build-system.patch +++ /dev/null @@ -1,173 +0,0 @@ -Fix build with BR2_ENABLE_DEBUG=yes, no need for expert mode anymore - -Otherwise configure issues this error message: -configure: error: --enable-debug cannot be used in conjunction with --enable-expert-mode - -Downloaded from Gentoo: -http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/beecrypt/files/beecrypt-4.2.1-build-system.patch?revision=1.2&view=markup - -This patch also removes the hard-coded CFLAGS provided by beecrypt in favour -of the CFLAGS provided by buildroot. - -Signed-off-by: Bernd Kuhls - ---- beecrypt-4.2.1/configure.ac -+++ beecrypt-4.2.1/configure.ac -@@ -11,7 +11,7 @@ - - # Checks for package options - AC_ARG_ENABLE(expert-mode, [ --enable-expert-mode follow user-defined CFLAGS settings [[default=no]]],[ -- ac_enable_expert_mode=yes -+ ac_enable_expert_mode=$enableval - ],[ - if test "X$CFLAGS" != "X"; then - echo "enabling expert mode" -@@ -25,7 +25,7 @@ - if test "$ac_enable_expert_mode" = yes; then - AC_MSG_ERROR([--enable-debug cannot be used in conjunction with --enable-expert-mode]) - fi -- ac_enable_debug=yes -+ ac_enable_debug=$enableval - ],[ - ac_enable_debug=no - ]) -@@ -456,7 +456,7 @@ - ac_cv_python_include="-I`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_inc()'`" - ]) - AC_CACHE_CHECK([where to install python libraries], ac_cv_python_libdir, [ -- ac_cv_python_libdir=`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()'` -+ ac_cv_python_libdir=`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1, 0)'` - ]) - fi - fi ---- beecrypt-4.2.1/acinclude.m4 -+++ beecrypt-4.2.1/acinclude.m4 -@@ -498,15 +498,6 @@ AC_DEFUN([BEE_GNU_CC],[ - AC_SUBST(OPENMP_LIBS,"-lgomp") - fi - case $bc_target_arch in -- x86_64 | athlon64 | athlon-fx | k8 | opteron | em64t | nocona) -- CC="$CC -m64" -- ;; -- i[[3456]]86 | \ -- pentium* | \ -- athlon*) -- CC="$CC -m32" -- CCAS="$CCAS -m32" -- ;; - ia64) - case $target_os in - # HP/UX on Itanium needs to be told that a long is 64-bit! -@@ -525,17 +516,8 @@ AC_DEFUN([BEE_GNU_CC],[ - aix*) - CC="$CC -maix64" - ;; -- linux*) -- CC="$CC -m64" -- ;; - esac - ;; -- sparc | sparcv8*) -- CC="$CC -m32" -- ;; -- sparc64 | sparcv9*) -- CC="$CC -m64" -- ;; - esac - # Certain platforms needs special flags for multi-threaded code - if test "$ac_enable_threads" = yes; then -@@ -646,14 +646,6 @@ dnl BEE_GNU_CXX - AC_DEFUN([BEE_GNU_CXX],[ - AC_REQUIRE([AC_PROG_CXX]) - case $bc_target_arch in -- x86_64 | athlon64 | athlon-fx | k8 | opteron | em64t | nocona | core2) -- CXX="$CXX -m64" -- ;; -- i[[3456]]86 | \ -- pentium* | \ -- athlon*) -- CXX="$CXX -m32" -- ;; - ia64) - case $target_os in - # HP/UX on Itanium needs to be told that a long is 64-bit! -@@ -672,17 +664,8 @@ AC_DEFUN([BEE_GNU_CXX],[ - aix*) - CXX="$CXX -maix64" - ;; -- linux*) -- CXX="$CXX -m64" -- ;; - esac - ;; -- sparc | sparcv8*) -- CXX="$CXX -m32" -- ;; -- sparc64 | sparcv9*) -- CXX="$CXX -m64" -- ;; - esac - # Certain platforms needs special flags for multi-threaded code - if test "$ac_enable_threads" = yes; then ---- beecrypt-4.2.1/java/Makefile.am -+++ beecrypt-4.2.1/java/Makefile.am -@@ -26,7 +26,7 @@ - - INCLUDES = -I$(top_srcdir)/include - --libaltdir=$(prefix)/lib@LIBALT@ -+libaltdir=$(libdir) - - libalt_LTLIBRARIES = libbeecrypt_java.la - ---- beecrypt-4.2.1/acinclude.m4 -+++ beecrypt-4.2.1/acinclude.m4 -@@ -1589,20 +1589,5 @@ - AC_SUBST(TYPEDEF_BC_THREADID_T,$bc_typedef_bc_threadid_t) - ]) -- --AH_BOTTOM([ --#if ENABLE_THREADS --# ifndef _REENTRANT --# define _REENTRANT --# endif --# if LINUX --# define _LIBC_REENTRANT --# endif --#else --# ifdef _REENTRANT --# undef _REENTRANT --# endif --#endif --]) - - - dnl BEE_THREAD_LOCAL_STORAGE -@@ -1623,7 +1609,5 @@ - ]) - - AH_BOTTOM([ --#if !ENABLE_THREAD_LOCAL_STORAGE --# define __thread --#endif -+#include "config.threads.h" - ]) ---- beecrypt-4.2.1/config.threads.h -+++ beecrypt-4.2.1/config.threads.h -@@ -0,0 +1,16 @@ -+#if ENABLE_THREADS -+# ifndef _REENTRANT -+# define _REENTRANT -+# endif -+# if LINUX -+# define _LIBC_REENTRANT -+# endif -+#else -+# ifdef _REENTRANT -+# undef _REENTRANT -+# endif -+#endif -+ -+#if !ENABLE_THREAD_LOCAL_STORAGE -+# define __thread -+#endif diff --git a/package/beecrypt/0004-gcc-4.7.patch b/package/beecrypt/0004-gcc-4.7.patch deleted file mode 100644 index 767f789069..0000000000 --- a/package/beecrypt/0004-gcc-4.7.patch +++ /dev/null @@ -1,19 +0,0 @@ -Really fixes gcc-4.7 related compile error: -../../include/beecrypt/c++/util/AbstractSet.h:59:27: error: 'containsAll' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] - -Downloaded from upstream bugtracker: -http://sourceforge.net/p/beecrypt/patches/10/ - -Signed-off-by: Bernd Kuhls - ---- a/include/beecrypt/c++/util/AbstractSet.h -+++ b/include/beecrypt/c++/util/AbstractSet.h -@@ -56,7 +56,7 @@ - if (c->size() != size()) - return false; - -- return containsAll(*c); -+ return this->containsAll(*c); - } - return false; - } diff --git a/package/beecrypt/Config.in b/package/beecrypt/Config.in index 8854515104..9aec85afdb 100644 --- a/package/beecrypt/Config.in +++ b/package/beecrypt/Config.in @@ -8,25 +8,3 @@ config BR2_PACKAGE_BEECRYPT Beecrypt is a general-purpose cryptography library. http://beecrypt.sf.net - -if BR2_PACKAGE_BEECRYPT - -config BR2_PACKAGE_BEECRYPT_CPP - bool "C++ support" - depends on BR2_HOST_GCC_AT_LEAST_4_8 # icu - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # icu - depends on BR2_USE_WCHAR # icu - depends on !BR2_BINFMT_FLAT # icu - depends on !BR2_STATIC_LIBS - select BR2_PACKAGE_ICU - help - Enable C++ support. This pulls in the (large) icu package. - -comment "C++ support needs a toolchain w/ C++, wchar, dynamic libraries, gcc >= 4.8, host gcc >= 4.8" - depends on !BR2_BINFMT_FLAT - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ - || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \ - || !BR2_HOST_GCC_AT_LEAST_4_8 - -endif # BR2_PACKAGE_BEECRYPT diff --git a/package/beecrypt/beecrypt.mk b/package/beecrypt/beecrypt.mk index 10dd97c814..f13f72c8ac 100644 --- a/package/beecrypt/beecrypt.mk +++ b/package/beecrypt/beecrypt.mk @@ -15,7 +15,8 @@ BEECRYPT_CONF_OPTS = \ --disable-expert-mode \ --without-java \ --without-python \ - --disable-openmp + --disable-openmp \ + --without-cplusplus # disable optimized m68k assembly as it doesn't compile for coldfire ifeq ($(BR2_m68k_cf),y) @@ -27,19 +28,11 @@ ifeq ($(BR2_arm):$(BR2_ARM_CPU_HAS_ARM),y:) BEECRYPT_CONF_OPTS += --enable-debug endif -ifeq ($(BR2_PACKAGE_BEECRYPT_CPP),y) -BEECRYPT_DEPENDENCIES += icu -BEECRYPT_CONF_OPTS += --with-cplusplus -else -BEECRYPT_CONF_OPTS += --without-cplusplus - # automake/libtool uses the C++ compiler to link libbeecrypt because of # (the optional) cppglue.cxx. Force it to use the C compiler instead. define BEECRYPT_LINK_WITH_CC $(SED) 's/--tag=CXX/--tag=CC/g' $(@D)/Makefile endef - BEECRYPT_POST_CONFIGURE_HOOKS += BEECRYPT_LINK_WITH_CC -endif $(eval $(autotools-package))