From 4d399a6fbeb720b34d33441330910b7d853f703d Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 21 Mar 2021 17:20:17 -0400 Subject: Bring configure support for LZ4 up to snuff. It's not okay to just shove the pkg_config results right into our build flags, for a couple different reasons: * This fails to maintain the separation between CPPFLAGS and CFLAGS, as well as that between LDFLAGS and LIBS. (The CPPFLAGS angle is, I believe, the reason for warning messages reported when building with MacPorts' liblz4.) * If pkg_config emits anything other than -I/-D/-L/-l switches, it's highly unlikely that we want to absorb those. That'd be more likely to break the build than do anything helpful. (Even the -D case is questionable; but we're doing that for libxml2, so I kept it.) Also, it's not okay to skip doing an AC_CHECK_LIB probe, as evidenced by recent build failure on topminnow; that should have been caught at configure time. Model fixes for this on configure's libxml2 support. It appears that somebody overlooked an autoheader run, too. Discussion: https://postgr.es/m/20210119190720.GL8560@telsasoft.com --- src/include/pg_config.h.in | 11 ++++++++++- src/tools/msvc/Solution.pm | 3 +++ 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in index d873c177cb7..fcbf3367048 100644 --- a/src/include/pg_config.h.in +++ b/src/include/pg_config.h.in @@ -319,6 +319,9 @@ /* Define to 1 if you have the `ldap_r' library (-lldap_r). */ #undef HAVE_LIBLDAP_R +/* Define to 1 if you have the `lz4' library (-llz4). */ +#undef HAVE_LIBLZ4 + /* Define to 1 if you have the `m' library (-lm). */ #undef HAVE_LIBM @@ -358,6 +361,12 @@ /* Define to 1 if `long long int' works and is 64 bits. */ #undef HAVE_LONG_LONG_INT_64 +/* Define to 1 if you have the header file. */ +#undef HAVE_LZ4_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_LZ4_LZ4_H + /* Define to 1 if you have the header file. */ #undef HAVE_MBARRIER_H @@ -902,7 +911,7 @@ /* Define to 1 to build with LLVM based JIT support. (--with-llvm) */ #undef USE_LLVM -/* Define to 1 to build with LZ4 support (--with-lz4) */ +/* Define to 1 to build with LZ4 support. (--with-lz4) */ #undef USE_LZ4 /* Define to select named POSIX semaphores. */ diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm index ea8ed4be309..9342347c9e5 100644 --- a/src/tools/msvc/Solution.pm +++ b/src/tools/msvc/Solution.pm @@ -298,6 +298,7 @@ sub GenerateFiles HAVE_LIBCRYPTO => undef, HAVE_LIBLDAP => undef, HAVE_LIBLDAP_R => undef, + HAVE_LIBLZ4 => undef, HAVE_LIBM => undef, HAVE_LIBPAM => undef, HAVE_LIBREADLINE => undef, @@ -311,6 +312,8 @@ sub GenerateFiles HAVE_LOCALE_T => 1, HAVE_LONG_INT_64 => undef, HAVE_LONG_LONG_INT_64 => 1, + HAVE_LZ4_H => undef, + HAVE_LZ4_LZ4_H => undef, HAVE_MBARRIER_H => undef, HAVE_MBSTOWCS_L => 1, HAVE_MEMORY_H => 1, -- cgit v1.2.3