[git] GPG-ERROR - branch, gniibe/disable-new-dtags, created. gpgrt-1.33-8-g5f9569e

by NIIBE Yutaka cvs at cvs.gnupg.org
Tue Jan 8 02:46:37 CET 2019


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Error codes used by GnuPG et al.".

The branch, gniibe/disable-new-dtags has been created
        at  5f9569ee181f807cdfa74e2b12c8fab9f80784fe (commit)

- Log -----------------------------------------------------------------
commit 5f9569ee181f807cdfa74e2b12c8fab9f80784fe
Author: NIIBE Yutaka <gniibe at fsij.org>
Date:   Tue Jan 8 10:21:44 2019 +0900

    build: Build with LD_LIBRARY_PATH, use of DT_RPATH (2/2).
    
    * configure.ac (LDADD_TESTS): New for --disable-new-dtags.
    * tests/Makefile.am (LDADD): Use LDADD_TESTS.
    (t_lock_LDADD, t_poll_LDADD): Use LDADD.
    
    Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>

diff --git a/configure.ac b/configure.ac
index 8f1598e..dc9b543 100644
--- a/configure.ac
+++ b/configure.ac
@@ -82,7 +82,7 @@ AC_PROG_AWK
 AC_CHECK_TOOL(AR, ar, :)
 AC_GNU_SOURCE
 
-# Taken from mpfr-4.0.1
+# Taken from mpfr-4.0.1, then modified for LDADD_TESTS
 dnl Under Linux, make sure that the old dtags are used if LD_LIBRARY_PATH
 dnl is defined. The issue is that with the new dtags, LD_LIBRARY_PATH has
 dnl the precedence over the run path, so that if a compatible MPFR library
@@ -101,18 +101,21 @@ case $host in
   *-*-linux*)
     if test -n "$LD_LIBRARY_PATH"; then
       saved_LDFLAGS="$LDFLAGS"
-      LDFLAGS="$LDFLAGS -Wl,--disable-new-dtags"
+      LDADD_TESTS="-Wl,--disable-new-dtags"
+      LDFLAGS="$LDFLAGS $LDADD_TESTS"
       AC_MSG_CHECKING(whether --disable-new-dtags is supported by the linker)
       AC_LINK_IFELSE([AC_LANG_SOURCE([[
 int main (void) { return 0; }
       ]])],
       [AC_MSG_RESULT(yes (use it since LD_LIBRARY_PATH is set))],
       [AC_MSG_RESULT(no)
-       LDFLAGS="$saved_LDFLAGS"
+       LDADD_TESTS=""
       ])
+      LDFLAGS="$saved_LDFLAGS"
     fi
     ;;
 esac
+AC_SUBST([LDADD_TESTS])
 
 # Set some variables depending on the platform for later use.
 have_w32_system=no
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 71ca3a4..97f06eb 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -33,10 +33,10 @@ TESTS = t-version t-strerror t-syserror t-lock t-printf t-poll t-b64 \
 AM_CPPFLAGS = -I$(top_builddir)/src $(extra_includes)
 
 AM_LDFLAGS = -no-install
-LDADD = $(gpg_error_lib)
+LDADD = $(gpg_error_lib) @LDADD_TESTS@
 
 noinst_PROGRAMS = $(TESTS)
 noinst_HEADERS = t-common.h
 
-t_lock_LDADD = $(gpg_error_lib) $(LIBMULTITHREAD)
-t_poll_LDADD = $(gpg_error_lib) $(LIBMULTITHREAD)
+t_lock_LDADD = $(LDADD) $(LIBMULTITHREAD)
+t_poll_LDADD = $(LDADD) $(LIBMULTITHREAD)

commit 7933692f2e6060f09dc13e2ce07f677feacd364f
Author: NIIBE Yutaka <gniibe at fsij.org>
Date:   Tue Jan 8 10:05:25 2019 +0900

    build: Build with LD_LIBRARY_PATH, use of DT_RPATH (1/2).
    
    * configure.ac: Check against --disable-new-dtags.
    
    Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>

diff --git a/configure.ac b/configure.ac
index 4a99523..8f1598e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -82,6 +82,38 @@ AC_PROG_AWK
 AC_CHECK_TOOL(AR, ar, :)
 AC_GNU_SOURCE
 
+# Taken from mpfr-4.0.1
+dnl Under Linux, make sure that the old dtags are used if LD_LIBRARY_PATH
+dnl is defined. The issue is that with the new dtags, LD_LIBRARY_PATH has
+dnl the precedence over the run path, so that if a compatible MPFR library
+dnl is installed in some directory from $LD_LIBRARY_PATH, then the tested
+dnl MPFR library will be this library instead of the MPFR library from the
+dnl build tree. Other OS with the same issue might be added later.
+dnl
+dnl References:
+dnl   https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=859732
+dnl   http://lists.gnu.org/archive/html/libtool/2017-05/msg00000.html
+dnl
+dnl We need to check whether --disable-new-dtags is supported as alternate
+dnl linkers may be used (e.g., with tcc: CC=tcc LD=tcc).
+dnl
+case $host in
+  *-*-linux*)
+    if test -n "$LD_LIBRARY_PATH"; then
+      saved_LDFLAGS="$LDFLAGS"
+      LDFLAGS="$LDFLAGS -Wl,--disable-new-dtags"
+      AC_MSG_CHECKING(whether --disable-new-dtags is supported by the linker)
+      AC_LINK_IFELSE([AC_LANG_SOURCE([[
+int main (void) { return 0; }
+      ]])],
+      [AC_MSG_RESULT(yes (use it since LD_LIBRARY_PATH is set))],
+      [AC_MSG_RESULT(no)
+       LDFLAGS="$saved_LDFLAGS"
+      ])
+    fi
+    ;;
+esac
+
 # Set some variables depending on the platform for later use.
 have_w32_system=no
 have_w64_system=no

-----------------------------------------------------------------------


hooks/post-receive
-- 
Error codes used by GnuPG et al.
http://git.gnupg.org




More information about the Gnupg-commits mailing list