summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNIIBE Yutaka <gniibe@fsij.org>2018-11-02 09:49:27 +0900
committerNIIBE Yutaka <gniibe@fsij.org>2018-11-02 09:49:27 +0900
commit7ffd88b0e98af21aa61a57dde042d75f0d403839 (patch)
tree7662cfb01cd7b093172b72ee350e88908e637c53
parent8f034bb3a1bbde2fc7a8d2ada6e3d779c465895b (diff)
downloadlibgpg-error-7ffd88b0e98af21aa61a57dde042d75f0d403839.tar.gz
gpg-error.m4: Find gpgrt_libdir by CC.
* src/gpg-error.m4 (gpgrt_libdir): New. Bump the version date. * src/gpgrt.m4: Likewise. -- Locating gpg-error.pc file, when it's not found at target's $libdir, try system libdir defined by CC, assuming CC supports gcc compatible -print-file-name option. GnuPG-bug-id: 4239 Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
-rw-r--r--src/gpg-error.m437
-rw-r--r--src/gpgrt.m425
2 files changed, 44 insertions, 18 deletions
diff --git a/src/gpg-error.m4 b/src/gpg-error.m4
index f643307..5d5cdf9 100644
--- a/src/gpg-error.m4
+++ b/src/gpg-error.m4
@@ -9,7 +9,7 @@
# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#
-# Last-changed: 2018-10-29
+# Last-changed: 2018-11-02
dnl AM_PATH_GPG_ERROR([MINIMUM-VERSION,
@@ -64,14 +64,26 @@ AC_DEFUN([AM_PATH_GPG_ERROR],
min_gpg_error_version=ifelse([$1], ,1.33,$1)
ok=no
- use_gpgrt_config=""
- if test "$GPG_ERROR_CONFIG" = "no"; then
+ if test -f $libdir/pkgconfig/gpg-error.pc; then
+ gpgrt_libdir=$libdir
+ else
+ if crt1_path=$(${CC:-cc} -print-file-name=crt1.o 2>/dev/null); then
+ if possible_libdir=$(cd ${crt1_path%/*} && pwd 2>/dev/null); then
+ if test -f $possible_libdir/pkgconfig/gpg-error.pc; then
+ gpgrt_libdir=$possible_libdir
+ fi
+ fi
+ fi
+ fi
+
+ if test "$GPG_ERROR_CONFIG" = "no" -a -n "$gpgrt_libdir"; then
AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no)
- if test "$GPGRT_CONFIG" != "no"; then
- GPGRT_CONFIG="$GPGRT_CONFIG --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir"
+ if test "$GPGRT_CONFIG" = "no"; then
+ unset GPGRT_CONFIG
+ else
+ GPGRT_CONFIG="$GPGRT_CONFIG --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$gpgrt_libdir"
if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then
GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error"
- use_gpgrt_config=yes
gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion`
else
unset GPGRT_CONFIG
@@ -98,14 +110,15 @@ AC_DEFUN([AM_PATH_GPG_ERROR],
fi
fi
fi
- if test -z "$GPGRT_CONFIG"; then
+ if test -z "$GPGRT_CONFIG" -a -n "$gpgrt_libdir"; then
if test "$major" -gt 1 -o "$major" -eq 1 -a "$minor" -ge 33; then
AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no)
- if test "$GPGRT_CONFIG" != "no"; then
- GPGRT_CONFIG="$GPGRT_CONFIG --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir"
+ if test "$GPGRT_CONFIG" = "no"; then
+ unset GPGRT_CONFIG
+ else
+ GPGRT_CONFIG="$GPGRT_CONFIG --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$gpgrt_libdir"
if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then
GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error"
- use_gpgrt_config=yes
else
unset GPGRT_CONFIG
fi
@@ -117,7 +130,7 @@ AC_DEFUN([AM_PATH_GPG_ERROR],
if test $ok = yes; then
GPG_ERROR_CFLAGS=`$GPG_ERROR_CONFIG --cflags`
GPG_ERROR_LIBS=`$GPG_ERROR_CONFIG --libs`
- if test -z "$use_gpgrt_config"; then
+ if test -z "$GPGRT_CONFIG"; then
GPG_ERROR_MT_CFLAGS=`$GPG_ERROR_CONFIG --mt --cflags 2>/dev/null`
GPG_ERROR_MT_LIBS=`$GPG_ERROR_CONFIG --mt --libs 2>/dev/null`
else
@@ -128,7 +141,7 @@ AC_DEFUN([AM_PATH_GPG_ERROR],
fi
AC_MSG_RESULT([yes ($gpg_error_config_version)])
ifelse([$2], , :, [$2])
- if test -z "$use_gpgrt_config"; then
+ if test -z "$GPGRT_CONFIG"; then
gpg_error_config_host=`$GPG_ERROR_CONFIG --host 2>/dev/null || echo none`
else
gpg_error_config_host=`$GPG_ERROR_CONFIG --variable=host 2>/dev/null || echo none`
diff --git a/src/gpgrt.m4 b/src/gpgrt.m4
index 7f92a22..912b103 100644
--- a/src/gpgrt.m4
+++ b/src/gpgrt.m4
@@ -10,7 +10,7 @@
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# SPDX-License-Identifier: FSFULLR
#
-# Last-changed: 2018-10-29
+# Last-changed: 2018-11-02
# Note: This is a kind of duplicate of gpg-error.m4 with uses the
# future name of libgpg-error to prepare for a smooth migration in
# some distant time.
@@ -69,15 +69,28 @@ AC_DEFUN([AM_PATH_GPGRT],
fi
fi
- AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no)
- if test "$GPGRT_CONFIG" != "no"; then
- GPGRT_CONFIG="$GPGRT_CONFIG --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir"
+ if test -f $libdir/pkgconfig/gpg-error.pc; then
+ gpgrt_libdir=$libdir
+ else
+ if crt1_path=$(${CC:-cc} -print-file-name=crt1.o 2>/dev/null); then
+ if possible_libdir=$(cd ${crt1_path%/*} && pwd 2>/dev/null); then
+ if test -f $possible_libdir/pkgconfig/gpg-error.pc; then
+ gpgrt_libdir=$possible_libdir
+ fi
+ fi
+ fi
+ fi
+
+ if test -n "$gpgrt_libdir"; then
+ AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no)
+ if test "$GPGRT_CONFIG" != "no"; then
+ GPGRT_CONFIG="$GPGRT_CONFIG --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$gpgrt_libdir"
+ fi
fi
min_gpgrt_version=ifelse([$1], ,1.33,$1)
AC_MSG_CHECKING(for GPG Runtime - version >= $min_gpgrt_version)
ok=no
- if test "$GPGRT_CONFIG" != "no" \
- && test -f "$GPGRT_CONFIG" ; then
+ if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no" ; then
req_major=`echo $min_gpgrt_version | \
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
req_minor=`echo $min_gpgrt_version | \