summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlo Marcelo Arenas Belón <carenas@gmail.com>2023-04-22 02:03:48 -0700
committerJim Meyering <meyering@meta.com>2023-04-22 21:29:57 -0700
commit92585cde9b5938d433738a873c8d44713d005f2c (patch)
treeab9a35f58c2eee48a93a05fae6f6b2f53e990115
parent0f2c2c256fd807f5ecd744135e3734b8dfa1b7b1 (diff)
downloadgrep-92585cde9b5938d433738a873c8d44713d005f2c.tar.gz
build: prevent pkg-config from overriding PCRE_* settings
The use of PCRE_CFLAGS and PCRE_LIBS, as documented in the output of `--help`, is meant to override those settings from pkg-config. * NEWS: mention this * m4/pcre.m4: avoid overriding user provided settings
-rw-r--r--NEWS5
-rw-r--r--m4/pcre.m45
2 files changed, 8 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index f16c5769..c15764ce 100644
--- a/NEWS
+++ b/NEWS
@@ -19,10 +19,13 @@ GNU grep NEWS -*- outline -*-
grep --version now prints a line describing the version of PCRE2 it uses.
For example, it prints this when built with the very latest from git:
- grep -P uses PCRE2 10.43-DEV 2023-01-15
+ grep -P uses PCRE2 10.43-DEV 2023-04-14
or this with what's currently available in Fedora 37:
grep -P uses PCRE2 10.40 2022-04-14
+ previous versions of grep wouldn't respect the user provided settings for
+ PCRE_CFLAGS and PCRE_LIBS when building if a libpcre2-8 pkg-config module
+ found in the system.
* Noteworthy changes in release 3.10 (2023-03-22) [stable]
diff --git a/m4/pcre.m4 b/m4/pcre.m4
index a8ee55ec..f4c71c73 100644
--- a/m4/pcre.m4
+++ b/m4/pcre.m4
@@ -21,7 +21,10 @@ AC_DEFUN([gl_FUNC_PCRE],
use_pcre=no
if test $test_pcre != no; then
- PKG_CHECK_MODULES([PCRE], [libpcre2-8], [], [: ${PCRE_LIBS=-lpcre2-8}])
+
+ if test -z "$PCRE_CFLAGS" && test -z "$PCRE_LIBS"; then
+ PKG_CHECK_MODULES([PCRE], [libpcre2-8], [], [: ${PCRE_LIBS=-lpcre2-8}])
+ fi
AC_CACHE_CHECK([for pcre2_compile], [pcre_cv_have_pcre2_compile],
[pcre_saved_CFLAGS=$CFLAGS