[SCM] PostGIS branch master updated. 3.6.0rc2-620-gb8c7b0142

git at osgeo.org git at osgeo.org
Fri Jun 19 00:37:42 PDT 2026


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 "PostGIS".

The branch, master has been updated
       via  b8c7b014233d32d61b75dee622fc76c215949427 (commit)
      from  6f291bf547cf9b1834cfa63a779899f6ede4aeba (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 b8c7b014233d32d61b75dee622fc76c215949427
Author: Darafei Praliaskouski <me at komzpa.net>
Date:   Fri Jun 19 10:49:37 2026 +0400

    fuzzers: pass configured include paths to smoke builds
    
    The standalone fuzzer smoke build compiles liblwgeom headers outside the liblwgeom Makefile, so it also needs the dependency include paths discovered by configure. Reuse the configured CPPFLAGS while dropping liblwgeom-local Make variables that are only valid inside that directory.
    
    Closes #6083
    Closes https://github.com/postgis/postgis/pull/984

diff --git a/NEWS b/NEWS
index 24b7e37b5..080ac74fd 100644
--- a/NEWS
+++ b/NEWS
@@ -62,6 +62,8 @@ To take advantage of all postgis_sfcgal extension features SFCGAL 2.3+ is needed
 
 * Bug Fixes *
 
+ - #6083, Pass configured dependency include paths to fuzzer smoke builds
+          (Darafei Praliaskouski)
  - #3103, Add regression coverage for exact-schema find_srid and
           geometry_columns lookups (Darafei Praliaskouski)
  - #5655, [doc] Skip XML validation during `make check` when xsltproc is
diff --git a/fuzzers/Makefile b/fuzzers/Makefile
index 51c4ed5e2..ebe7077e2 100644
--- a/fuzzers/Makefile
+++ b/fuzzers/Makefile
@@ -6,7 +6,11 @@ FUZZER_WORK ?= $(FUZZER_OUT)/postgis-fuzzer-check
 FUZZER_SOURCES := $(notdir $(wildcard $(FUZZER_SRC_DIR)/*_fuzzer.cpp $(FUZZER_SRC_DIR)/*_fuzzer.c))
 FUZZER_NAMES := $(basename $(FUZZER_SOURCES))
 SEED_CORPORA := $(wildcard $(FUZZER_SRC_DIR)/*_seed_corpus.zip)
+# The standalone fuzzer smoke build includes liblwgeom.h outside liblwgeom's
+# Makefile, so it must inherit the configured dependency include paths.
+POSTGIS_CONFIGURED_CPPFLAGS := $(shell sed -n 's/^CPPFLAGS = //p' $(POSTGIS_BUILD_DIR)/liblwgeom/Makefile 2>/dev/null | sed 's/$$(RYU_INCLUDE)//g; s/-I$$(builddir)//g; s/-I$$(srcdir)//g' | sed 1q)
 POSTGIS_CONFIGURED_LDFLAGS := $(shell sed -n 's/^LDFLAGS = //p' $(POSTGIS_BUILD_DIR)/liblwgeom/Makefile 2>/dev/null | sed 1q)
+POSTGIS_FUZZER_CPPFLAGS = $(POSTGIS_CONFIGURED_CPPFLAGS) $(CPPFLAGS)
 POSTGIS_FUZZER_LDFLAGS = $(POSTGIS_CONFIGURED_LDFLAGS) $(LDFLAGS)
 
 .PHONY: clean dummyfuzzers check check-corpus
@@ -20,7 +24,7 @@ fuzzingengine.o: $(FUZZER_SRC_DIR)/fuzzingengine.c
 dummyfuzzers: fuzzingengine.o
 	mkdir -p "$(FUZZER_OUT)"
 	$(AR) r libFuzzingEngine.a fuzzingengine.o
-	CC="${CC}" CXX="${CXX}" CXXFLAGS="-L$(CURDIR) ${CXXFLAGS}" LDFLAGS="$(POSTGIS_FUZZER_LDFLAGS)" POSTGIS_BUILD_DIR="$(POSTGIS_BUILD_DIR)" SRC="$(FUZZER_SRC_DIR)" OUT="$(FUZZER_OUT)" $(FUZZER_SRC_DIR)/build_google_oss_fuzzers.sh
+	CC="${CC}" CXX="${CXX}" CPPFLAGS="$(POSTGIS_FUZZER_CPPFLAGS)" CXXFLAGS="-L$(CURDIR) ${CXXFLAGS}" LDFLAGS="$(POSTGIS_FUZZER_LDFLAGS)" POSTGIS_BUILD_DIR="$(POSTGIS_BUILD_DIR)" SRC="$(FUZZER_SRC_DIR)" OUT="$(FUZZER_OUT)" $(FUZZER_SRC_DIR)/build_google_oss_fuzzers.sh
 	OUT="$(FUZZER_OUT)" $(FUZZER_SRC_DIR)/build_seed_corpus.sh
 
 check:
diff --git a/fuzzers/build_google_oss_fuzzers.sh b/fuzzers/build_google_oss_fuzzers.sh
index 1cc825413..b4161bd69 100755
--- a/fuzzers/build_google_oss_fuzzers.sh
+++ b/fuzzers/build_google_oss_fuzzers.sh
@@ -33,11 +33,20 @@ GDAL_LIBS=$(gdal-config --libs)
 POSTGIS_FUZZER_LIBS="$JSON_C_LIBS $GEOS_LIBS $PROJ_XML2_LIBS"
 POSTGIS_PACKAGE_RUNTIME_LIBS="${POSTGIS_PACKAGE_RUNTIME_LIBS:-1}"
 
+target_local_cflags()
+{
+    case "$1" in
+        raster_deserialize_fuzzer)
+            echo "-I$POSTGIS_SOURCE_DIR/raster/rt_core -I$POSTGIS_BUILD_DIR/raster/rt_core -I$POSTGIS_SOURCE_DIR/raster -I$POSTGIS_BUILD_DIR/raster -I$POSTGIS_SOURCE_DIR -I$POSTGIS_BUILD_DIR"
+            ;;
+    esac
+}
+
 target_cflags()
 {
     case "$1" in
         raster_deserialize_fuzzer)
-            echo "-I$POSTGIS_SOURCE_DIR/raster/rt_core -I$POSTGIS_BUILD_DIR/raster/rt_core -I$POSTGIS_SOURCE_DIR/raster -I$POSTGIS_BUILD_DIR/raster -I$POSTGIS_SOURCE_DIR -I$POSTGIS_BUILD_DIR $GDAL_CFLAGS"
+            echo "$GDAL_CFLAGS"
             ;;
     esac
 }
@@ -62,12 +71,12 @@ build_fuzzer()
 
     if [ "$extension" = "c" ]; then
         objectFile=$(mktemp)
-        "$CC" $CFLAGS -I"$POSTGIS_SOURCE_DIR/liblwgeom" -I"$POSTGIS_BUILD_DIR/liblwgeom" $(target_cflags "$fuzzerName") \
+        "$CC" $CFLAGS -I"$POSTGIS_SOURCE_DIR/liblwgeom" -I"$POSTGIS_BUILD_DIR/liblwgeom" $(target_local_cflags "$fuzzerName") $CPPFLAGS $(target_cflags "$fuzzerName") \
             -c "$sourceFilename" -o "$objectFile"
         sourceFilename=$objectFile
     fi
 
-    "$CXX" $CXXFLAGS -std=c++11 -I"$POSTGIS_SOURCE_DIR/liblwgeom" -I"$POSTGIS_BUILD_DIR/liblwgeom" \
+    "$CXX" $CXXFLAGS -std=c++11 -I"$POSTGIS_SOURCE_DIR/liblwgeom" -I"$POSTGIS_BUILD_DIR/liblwgeom" $CPPFLAGS \
         "$sourceFilename" -o "$OUT/$fuzzerName" \
         $LDFLAGS \
         -lFuzzingEngine -lstdc++ $(target_libs "$fuzzerName") \

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

Summary of changes:
 NEWS                                |  2 ++
 fuzzers/Makefile                    |  6 +++++-
 fuzzers/build_google_oss_fuzzers.sh | 15 ++++++++++++---
 3 files changed, 19 insertions(+), 4 deletions(-)


hooks/post-receive
-- 
PostGIS


More information about the postgis-tickets mailing list