From f1bcdf518fa7868b7819b0248f4b8da02a954dde Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Wed, 19 Sep 2007 12:20:52 +0000 Subject: [PATCH] - fix incorrect setting of $ac_cv_sys_symbol_underscore. There is no reason not to AC_COMPILE and use the set cross-nm to look for the symbol mangling scheme. Thus it is incorrect to check for cross compilation in the GNUPG_SYS_SYMBOL_UNDERSCORE check. - fix bug when configuring (has to wipe config.cache !) --- ...crypt-00-ac_cv_sys_symbol_underscore.patch | 24 +++++++++++++++++++ .../libgcrypt/libgcrypt-01-reconfigure.patch | 17 +++++++++++++ package/libgcrypt/libgcrypt.mk | 7 ++++-- 3 files changed, 46 insertions(+), 2 deletions(-) create mode 100644 package/libgcrypt/libgcrypt-00-ac_cv_sys_symbol_underscore.patch create mode 100644 package/libgcrypt/libgcrypt-01-reconfigure.patch diff --git a/package/libgcrypt/libgcrypt-00-ac_cv_sys_symbol_underscore.patch b/package/libgcrypt/libgcrypt-00-ac_cv_sys_symbol_underscore.patch new file mode 100644 index 0000000000..fe713601e0 --- /dev/null +++ b/package/libgcrypt/libgcrypt-00-ac_cv_sys_symbol_underscore.patch @@ -0,0 +1,24 @@ +diff -u libgcrypt-1.2.4.oorig/acinclude.m4 libgcrypt-1.2.4/acinclude.m4 +--- libgcrypt-1.2.4.oorig/acinclude.m4 2005-07-29 15:45:48.000000000 +0200 ++++ libgcrypt-1.2.4/acinclude.m4 2007-09-19 13:33:19.000000000 +0200 +@@ -99,12 +99,14 @@ + i386-emx-os2 | i[3456]86-pc-os2*emx | i386-pc-msdosdjgpp) + ac_cv_sys_symbol_underscore=yes + ;; +- *) +- if test "$cross_compiling" = yes; then +- ac_cv_sys_symbol_underscore=yes +- else +- tmp_do_check="yes" +- fi ++ *) if test -z "$ac_cv_sys_symbol_underscore"; then ++ if test "$cross_compiling" = yes && ++ then ++ ac_cv_sys_symbol_underscore=yes ++ else ++ tmp_do_check="yes" ++ fi ++ fi + ;; + esac + if test "$tmp_do_check" = "yes"; then diff --git a/package/libgcrypt/libgcrypt-01-reconfigure.patch b/package/libgcrypt/libgcrypt-01-reconfigure.patch new file mode 100644 index 0000000000..963ae8b5a0 --- /dev/null +++ b/package/libgcrypt/libgcrypt-01-reconfigure.patch @@ -0,0 +1,17 @@ +--- libgcrypt-1.2.4.oorig/configure 2007-09-19 13:40:48.000000000 +0200 ++++ libgcrypt-1.2.4/configure 2007-09-19 13:41:44.000000000 +0200 +@@ -27370,12 +27370,13 @@ + i386-emx-os2 | i345686-pc-os2*emx | i386-pc-msdosdjgpp) + ac_cv_sys_symbol_underscore=yes + ;; +- *) ++ *)if test -z "$ac_cv_sys_symbol_underscore";then + if test "$cross_compiling" = yes; then + ac_cv_sys_symbol_underscore=yes + else + tmp_do_check="yes" + fi ++ fi + ;; + esac + if test "$tmp_do_check" = "yes"; then diff --git a/package/libgcrypt/libgcrypt.mk b/package/libgcrypt/libgcrypt.mk index 8436222af3..8f145bad5f 100644 --- a/package/libgcrypt/libgcrypt.mk +++ b/package/libgcrypt/libgcrypt.mk @@ -18,12 +18,16 @@ $(LIBGCRYPT_DIR)/.source: $(DL_DIR)/$(LIBGCRYPT_SOURCE) $(BZCAT) $(DL_DIR)/$(LIBGCRYPT_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - toolchain/patch-kernel.sh $(LIBGCRYPT_DIR) package/libgcrypt/ libgcrypt\*.patch $(CONFIG_UPDATE) $(LIBGCRYPT_DIR) + # This is incorrectly hardwired to yes for cross-compiles with no + # sane way to pass pre-existing knowledge so fix it with the chainsaw.. + $(SED) '/GNUPG_SYS_SYMBOL_UNDERSCORE/d' $(LIBGCRYPT_DIR)/configure touch $@ $(LIBGCRYPT_DIR)/.configured: $(LIBGCRYPT_DIR)/.source - (cd $(LIBGCRYPT_DIR); \ + (cd $(LIBGCRYPT_DIR); rm -f config.cache; \ $(TARGET_CONFIGURE_OPTS) \ $(TARGET_CONFIGURE_ARGS) \ + ac_cv_sys_symbol_underscore=no \ ./configure \ --target=$(GNU_TARGET_NAME) \ --host=$(GNU_TARGET_NAME) \ @@ -41,7 +45,6 @@ $(LIBGCRYPT_DIR)/.configured: $(LIBGCRYPT_DIR)/.source --mandir=/usr/man \ --infodir=/usr/info \ --disable-optimization \ - --with-capabilities \ ) touch $@ -- 2.30.2