[git] GPG-ERROR - branch, master, updated. libgpg-error-1.27-229-g97b0881

by Werner Koch cvs at cvs.gnupg.org
Mon Nov 27 15:49:00 CET 2017


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, master has been updated
       via  97b0881216af24f2a46c11650e23691cff9cb12a (commit)
      from  6e8a7a87e00844b0efb449516ddf3aaa0b8dc750 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 97b0881216af24f2a46c11650e23691cff9cb12a
Author: Werner Koch <wk at gnupg.org>
Date:   Mon Nov 27 15:40:01 2017 +0100

    core: Install new files gpgrt.m4 and gpgrt-config.
    
    * src/gpgrt.m4: New.  Bascially a copy of libgpg-error.m4
    * src/gpg-error-config.in: Decide which name to print.
    * src/Makefile.am (nodist_bin_SCRIPTS): Add gpgrt-config.
    (m4data_DATA): Add gpgrt.m4
    (EXTRA_DIST): Add gpgrt.m4.
    (BUILT_SOURCES): Add gpgrt-config.
    (CLEANFILES): Add gpgrt-config.
    (gpgrt-config): Create from gpg-error-config.
    --
    
    These files can be used instead of gpg-error-config or gpg-error.m4.
    The hope is that providing them early will ease an eventual migration
    from libgpg-error to libgpgrt easier.
    
    Signed-off-by: Werner Koch <wk at gnupg.org>

diff --git a/doc/gpgrt.texi b/doc/gpgrt.texi
index 857973a..cc652f5 100644
--- a/doc/gpgrt.texi
+++ b/doc/gpgrt.texi
@@ -209,17 +209,25 @@ directory in which the header file is located to the compilers include
 file search path (via the @option{-I} option).
 
 However, the path to the include file is determined at the time the
-source is configured.  To solve this problem, Libgpg-error ships with a small
-helper program @command{gpg-error-config} that knows the path to the
-include file and other configuration options.  The options that need
-to be added to the compiler invocation at compile time are output by
-the @option{--cflags} option to @command{gpg-error-config}.  The following
-example shows how it can be used at the command line:
+source is configured.  To solve this problem, Libgpg-error ships with
+the small helper programs @command{gpg-error-config} and
+ at command{gpgrt-config} which both know the path to the include file
+and other configuration options.  The options that need to be added to
+the compiler invocation at compile time are output by the
+ at option{--cflags} option to @command{gpg-error-config} (or
+ at command{gpgrt-config}.  The following example shows how it can be
+used at the command line:
 
 @example
 gcc -c foo.c $(gpg-error-config --cflags)
 @end example
 
+or with the identical
+
+ at example
+gcc -c foo.c $(gpgrt-config --cflags)
+ at end example
+
 Adding the output of @samp{gpg-error-config --cflags} to the
 compiler’s command line will ensure that the compiler can find the
 Libgpg-error header file.
diff --git a/src/Makefile.am b/src/Makefile.am
index a95b732..4db7338 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -83,26 +83,27 @@ lock_obj_pub = \
 lib_LTLIBRARIES = libgpg-error.la
 nodist_include_HEADERS = gpg-error.h gpgrt.h
 bin_SCRIPTS = gpg-error-config
+nodist_bin_SCRIPTS = gpgrt-config
 m4datadir = $(datadir)/aclocal
-m4data_DATA = gpg-error.m4
+m4data_DATA = gpg-error.m4 gpgrt.m4
 
 EXTRA_DIST = mkstrtable.awk err-sources.h.in err-codes.h.in \
 	mkerrnos.awk errnos.in README \
 	mkerrcodes.awk mkerrcodes1.awk mkerrcodes2.awk mkerrcodes.c \
 	mkheader.c gpg-error.h.in mkw32errmap.c w32-add.h w32ce-add.h \
-	err-sources.h err-codes.h gpg-error-config.in gpg-error.m4 \
+	err-sources.h err-codes.h gpg-error-config.in gpg-error.m4 gpgrt.m4 \
 	gpg-error.vers gpg-error.def.in \
         versioninfo.rc.in gpg-error.w32-manifest.in \
 	$(lock_obj_pub)
 
 BUILT_SOURCES = err-sources.h err-codes.h code-to-errno.h code-from-errno.h \
 	err-sources-sym.h err-codes-sym.h errnos-sym.h gpg-error.h gpgrt.h \
-	gpg-error.def mkw32errmap.map.c
+	gpgrt-config gpg-error.def mkw32errmap.map.c
 
 tmp_files = _mkerrcodes.h _gpg-error.def.h mkw32errmap.tab.h mkw32errmap.map.c
 
 CLEANFILES = err-sources.h err-codes.h code-to-errno.h code-from-errno.h \
-	gpg-error.h gpgrt.h \
+	gpg-error.h gpgrt.h gpgrt-config \
         mkerrcodes mkerrcodes.h gpg-error.def mkw32errmap.tab.h \
 	mkw32errmap.map.c err-sources-sym.h err-codes-sym.h errnos-sym.h \
 	gpg-extra/errno.h mkheader $(tmp_files) lock-obj-pub.native.h
@@ -317,6 +318,9 @@ gpg-error.h: Makefile mkheader $(parts_of_gpg_error_h) \
 gpgrt.h: gpg-error.h
 	cp gpg-error.h gpgrt.h
 
+gpgrt-config: gpg-error-config
+	cp gpg-error-config gpgrt-config
+
 install-data-local:
 if HAVE_W32CE_SYSTEM
 	-$(MKDIR_P) "$(DESTDIR)$(includedir)/gpg-extra"
diff --git a/src/gpg-error-config.in b/src/gpg-error-config.in
index bc1c583..aa7cb67 100644
--- a/src/gpg-error-config.in
+++ b/src/gpg-error-config.in
@@ -8,7 +8,7 @@
 # This file is distributed in the hope that it will be useful, but
 # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
 # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
+# SPDX-License-Identifier: FSFULLR
 
 prefix=@prefix@
 exec_prefix=@exec_prefix@
@@ -16,13 +16,19 @@ includedir=@includedir@
 libdir=@libdir@
 isubdirafter="@GPG_ERROR_CONFIG_ISUBDIRAFTER@"
 
+if echo "$0" | grep gpg-error-config 2>/dev/null >/dev/null; then
+  myname="gpg-error-config"
+else
+  myname="gpgrt-config"
+fi
+
 output=""
 mt=no
 
 usage()
 {
     cat <<EOF
-Usage: gpg-error-config [OPTIONS]
+Usage: $myname [OPTIONS]
 Options:
         [--mt]       (must be the first option)
 	[--prefix]
@@ -67,7 +73,7 @@ while test $# -gt 0; do
 		output="$output -I$includedir"
 	    fi
             # Note: -idirafter is a gcc extension.  It is only used on
-            #       systems where gcc is the only compiler we support.
+            # systems where gcc is the only compiler we support (WindowsCE).
             for i in $isubdirafter; do
                 output="$output -idirafter ${includedir}/${i}"
             done
diff --git a/src/gpgrt.m4 b/src/gpgrt.m4
new file mode 100644
index 0000000..8c2b6f9
--- /dev/null
+++ b/src/gpgrt.m4
@@ -0,0 +1,124 @@
+# gpgrt.m4 - autoconf macro to detect libgpgrt
+# Copyright (C) 2002, 2003, 2004, 2011, 2014, 2017 g10 Code GmbH
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
+# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# SPDX-License-Identifier: FSFULLR
+#
+# Last-changed: 2014-10-02
+# Note: This is a duplicate of gpg-error.m4 with uses the future name
+# of libgpg-error to prepare for a smooth migration in some distant
+# time.
+
+dnl AM_PATH_GPGRT([MINIMUM-VERSION,
+dnl               [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
+dnl
+dnl Test for libgpgrt and define GPGRT_CFLAGS, GPGRT_LIBS,
+dnl GPG_ERROR_MT_CFLAGS, and GPG_ERROR_MT_LIBS.  The _MT_ variants are
+dnl used for programs requiring real multi thread support.
+dnl
+dnl If a prefix option is not used, the config script is first
+dnl searched in $SYSROOT/bin and then along $PATH.  If the used
+dnl config script does not match the host specification the script
+dnl is added to the gpg_config_script_warn variable.
+dnl
+AC_DEFUN([AM_PATH_GPGRT],
+[ AC_REQUIRE([AC_CANONICAL_HOST])
+  gpgrt_config_prefix=""
+  dnl --with-libgpg-error-prefix=PFX is the preferred name for this option,
+  dnl since that is consistent with how our three siblings use the directory/
+  dnl package name in --with-$dir_name-prefix=PFX.
+  AC_ARG_WITH(libgpg-error-prefix,
+              AC_HELP_STRING([--with-libgpg-error-prefix=PFX],
+                             [prefix where GPG Error is installed (optional)]),
+              [gpgrt_config_prefix="$withval"])
+
+  dnl Accept --with-gpg-error-prefix and make it work the same as
+  dnl --with-libgpg-error-prefix above, for backwards compatibility,
+  dnl but do not document this old, inconsistently-named option.
+  AC_ARG_WITH(gpg-error-prefix,,
+              [gpgrt_config_prefix="$withval"])
+
+  if test x"${GPGRT_CONFIG}" = x ; then
+     if test x"${gpgrt_config_prefix}" != x ; then
+        GPGRT_CONFIG="${gpgrt_config_prefix}/bin/gpg-error-config"
+     else
+       case "${SYSROOT}" in
+         /*)
+           if test -x "${SYSROOT}/bin/gpg-error-config" ; then
+             GPGRT_CONFIG="${SYSROOT}/bin/gpg-error-config"
+           fi
+           ;;
+         '')
+           ;;
+          *)
+           AC_MSG_WARN([Ignoring \$SYSROOT as it is not an absolute path.])
+           ;;
+       esac
+     fi
+  fi
+
+  AC_PATH_PROG(GPGRT_CONFIG, gpg-error-config, no)
+  min_gpgrt_version=ifelse([$1], ,0.0,$1)
+  AC_MSG_CHECKING(for GPG Error - version >= $min_gpgrt_version)
+  ok=no
+  if test "$GPGRT_CONFIG" != "no" \
+     && test -f "$GPGRT_CONFIG" ; then
+    req_major=`echo $min_gpgrt_version | \
+               sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
+    req_minor=`echo $min_gpgrt_version | \
+               sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\2/'`
+    gpgrt_config_version=`$GPGRT_CONFIG $gpgrt_config_args --version`
+    major=`echo $gpgrt_config_version | \
+               sed 's/\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
+    minor=`echo $gpgrt_config_version | \
+               sed 's/\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'`
+    if test "$major" -gt "$req_major"; then
+        ok=yes
+    else
+        if test "$major" -eq "$req_major"; then
+            if test "$minor" -ge "$req_minor"; then
+               ok=yes
+            fi
+        fi
+    fi
+  fi
+  if test $ok = yes; then
+    GPGRT_CFLAGS=`$GPGRT_CONFIG $gpgrt_config_args --cflags`
+    GPGRT_LIBS=`$GPGRT_CONFIG $gpgrt_config_args --libs`
+    GPGRT_MT_CFLAGS=`$GPGRT_CONFIG $gpgrt_config_args --mt --cflags 2>/dev/null`
+    GPGRT_MT_LIBS=`$GPGRT_CONFIG $gpgrt_config_args --mt --libs 2>/dev/null`
+    AC_MSG_RESULT([yes ($gpgrt_config_version)])
+    ifelse([$2], , :, [$2])
+    gpgrt_config_host=`$GPGRT_CONFIG $gpgrt_config_args --host 2>/dev/null || echo none`
+    if test x"$gpgrt_config_host" != xnone ; then
+      if test x"$gpgrt_config_host" != x"$host" ; then
+  AC_MSG_WARN([[
+***
+*** The config script $GPGRT_CONFIG was
+*** built for $gpgrt_config_host and thus may not match the
+*** used host $host.
+*** You may want to use the configure option --with-libgpg-error-prefix
+*** to specify a matching config script or use \$SYSROOT.
+***]])
+        gpg_config_script_warn="$gpg_config_script_warn libgpg-error"
+      fi
+    fi
+  else
+    GPGRT_CFLAGS=""
+    GPGRT_LIBS=""
+    GPGRT_MT_CFLAGS=""
+    GPGRT_MT_LIBS=""
+    AC_MSG_RESULT(no)
+    ifelse([$3], , :, [$3])
+  fi
+  AC_SUBST(GPGRT_CFLAGS)
+  AC_SUBST(GPGRT_LIBS)
+  AC_SUBST(GPGRT_MT_CFLAGS)
+  AC_SUBST(GPGRT_MT_LIBS)
+])

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

Summary of changes:
 doc/gpgrt.texi                 | 20 +++++++---
 src/Makefile.am                | 12 ++++--
 src/gpg-error-config.in        | 12 ++++--
 src/{gpg-error.m4 => gpgrt.m4} | 89 ++++++++++++++++++++++--------------------
 4 files changed, 77 insertions(+), 56 deletions(-)
 copy src/{gpg-error.m4 => gpgrt.m4} (53%)


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




More information about the Gnupg-commits mailing list