diff options
author | Ingo Klöcker <[email protected]> | 2022-08-22 17:09:54 +0000 |
---|---|---|
committer | Ingo Klöcker <[email protected]> | 2022-08-22 17:09:54 +0000 |
commit | 1522813888257aafb6d108b49fb7b24005d2693a (patch) | |
tree | bbbc48f69db01ba48195b0c8ec8102f9dbbf8692 | |
parent | build: Update ax_cxx_compile_stdcxx macro (diff) | |
download | gpgme-1522813888257aafb6d108b49fb7b24005d2693a.tar.gz gpgme-1522813888257aafb6d108b49fb7b24005d2693a.zip |
build: Omit -I... and -L... for standard paths in pkgconfig file
* configure.ac (GPGME_CONFIG_CFLAGS): Prefix with -I${includedir} for
non-standard include paths.
(GPGME_CONFIG_LIBS): Prefix with -L${libdir} for non-standard library
paths.
* src/gpgme.pc.in (Cflags): Remove hard-coded -I${includedir}.
(Libs): Remove hard-coded -L${libdir}.
--
This helps prevent problems when building/linking something that depends
on gpgme (installed in standard path) and some other library (installed
in a standard path and a custom path).
See T6136 for related changes in libgpg-error.
-rw-r--r-- | configure.ac | 36 | ||||
-rw-r--r-- | src/gpgme.pc.in | 4 |
2 files changed, 37 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac index aed0762f..e7fe04a7 100644 --- a/configure.ac +++ b/configure.ac @@ -850,11 +850,45 @@ AH_BOTTOM([ ]) -# Substitution used for gpgme-config +# Substitution used for gpgme-config and gpgme.pc GPGME_CONFIG_LIBS="-lgpgme" GPGME_CONFIG_CFLAGS="" GPGME_CONFIG_HOST="$host" GPGME_CONFIG_AVAIL_LANG="$enabled_languages" + +case "$includedir" in + /usr/include|/include) ;; + '${prefix}/include') + if test "$prefix" != / -a "$prefix" != /usr; then + if test -z "$GPGME_CONFIG_CFLAGS"; then + GPGME_CONFIG_CFLAGS="-I\${includedir}" + else + GPGME_CONFIG_CFLAGS="-I\${includedir} $GPGME_CONFIG_CFLAGS" + fi + fi + ;; + *) + if test -z "$GPGME_CONFIG_CFLAGS"; then + GPGME_CONFIG_CFLAGS="-I\${includedir}" + else + GPGME_CONFIG_CFLAGS="-I\${includedir} $GPGME_CONFIG_CFLAGS" + fi + ;; +esac +case "$libdir" in + /usr/lib|/usr/lib64|/lib|/lib64) ;; + '${exec_prefix}/lib'|'${exec_prefix}/lib64') + if test "$exec_prefix" = "NONE"; then + if test "$prefix" != / -a "$prefix" != /usr; then + GPGME_CONFIG_LIBS="-L\${libdir} $GPGME_CONFIG_LIBS" + fi + elif test "$exec_prefix" != / -a "$exec_prefix" != /usr; then + GPGME_CONFIG_LIBS="-L\${libdir} $GPGME_CONFIG_LIBS" + fi + ;; + *) GPGME_CONFIG_LIBS="-L\${libdir} $GPGME_CONFIG_LIBS" ;; +esac + AC_SUBST(GPGME_CONFIG_API_VERSION) AC_SUBST(GPGME_CONFIG_LIBS) AC_SUBST(GPGME_CONFIG_CFLAGS) diff --git a/src/gpgme.pc.in b/src/gpgme.pc.in index 80d59de8..9ddef5cd 100644 --- a/src/gpgme.pc.in +++ b/src/gpgme.pc.in @@ -9,6 +9,6 @@ Name: gpgme Description: GnuPG Made Easy to access GnuPG Requires.private: gpg-error, libassuan Version: @PACKAGE_VERSION@ -Cflags: -I${includedir} @GPGME_CONFIG_CFLAGS@ -Libs: -L${libdir} @GPGME_CONFIG_LIBS@ +Cflags: @GPGME_CONFIG_CFLAGS@ +Libs: @GPGME_CONFIG_LIBS@ URL: https://www.gnupg.org/software/gpgme/index.html |