GraphicsMagick: fuzzing/oss-fuzz-build.sh: Move libheif build to...

GraphicsMagick Commits <[email protected]> Mon, 18 Nov 2024 08:48:38 -0600
Newsgroups gmane.comp.video.graphicsmagick.cvs
Message-ID <mailman.35701.1731941327.7812.graphicsmagick-commit@lists.sourceforge.net>
changeset d6a967eb52ae in /hg/GraphicsMagick
details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=d6a967eb52ae
summary: fuzzing/oss-fuzz-build.sh: Move libheif build towards the end.

diffstat:

 ChangeLog                              |    5 +
 VisualMagick/installer/inc/version.isx |    4 +-
 fuzzing/oss-fuzz-build.sh              |  168 ++++++++++++++++----------------
 magick/version.h                       |    4 +-
 www/ChangeLog.html                     |    7 +
 5 files changed, 100 insertions(+), 88 deletions(-)

diffs (239 lines):

diff -r bdf424d91f42 -r d6a967eb52ae ChangeLog
--- a/ChangeLog	Sun Nov 17 16:34:49 2024 -0600
+++ b/ChangeLog	Mon Nov 18 08:48:07 2024 -0600
@@ -1,3 +1,8 @@
+2024-11-18  Bob Friesenhahn  <[email protected]>
+
+	* fuzzing/oss-fuzz-build.sh: Move libheif build towards the end
+	since it keeps adding more dependencies.
+
 2024-11-17  Bob Friesenhahn  <[email protected]>
 
 	* fuzzing/README.txt: Add more fuzzing notes.
diff -r bdf424d91f42 -r d6a967eb52ae VisualMagick/installer/inc/version.isx
--- a/VisualMagick/installer/inc/version.isx	Sun Nov 17 16:34:49 2024 -0600
+++ b/VisualMagick/installer/inc/version.isx	Mon Nov 18 08:48:07 2024 -0600
@@ -10,5 +10,5 @@
 
 #define public MagickPackageName "GraphicsMagick"
 #define public MagickPackageVersion "1.4"
-#define public MagickPackageVersionAddendum ".020241117"
-#define public MagickPackageReleaseDate "snapshot-20241117"
+#define public MagickPackageVersionAddendum ".020241118"
+#define public MagickPackageReleaseDate "snapshot-20241118"
diff -r bdf424d91f42 -r d6a967eb52ae fuzzing/oss-fuzz-build.sh
--- a/fuzzing/oss-fuzz-build.sh	Sun Nov 17 16:34:49 2024 -0600
+++ b/fuzzing/oss-fuzz-build.sh	Mon Nov 18 08:48:07 2024 -0600
@@ -364,6 +364,90 @@
     popd
 fi
 
+if $enable_jxl
+then
+    # Build libjxl
+    #  PKG_CONFIG_PATH=/work/lib/pkgconfig:/usr/lib/pkgconfig pkg-config --static libjxl_threads --libs
+    #    -L/work/lib -ljxl_threads -lm
+    #  PKG_CONFIG_PATH=/work/lib/pkgconfig:/usr/lib/pkgconfig pkg-config --static libjxl --libs
+    #    -L/work/lib -L -ljxl -lm -lhwy -lbrotlienc -lbrotlidec -lbrotlicommon -ljxl_cms -lm
+    #
+    # Removed -DJPEGXL_FORCE_SYSTEM_LCMS2=true
+    # Added -DJPEGXL_ENABLE_SKCMS=true, -DJPEGXL_BUNDLE_SKCMS=true
+    printf "=== Building ${SRC}/libjxl...\n"
+    LIBJXL_BUILD="${SRC}/libjxl_build"
+    rm -rf "${LIBJXL_BUILD}"
+    mkdir -p "${LIBJXL_BUILD}"
+    pushd "${LIBJXL_BUILD}"
+    cmake \
+        -DBUILD_SHARED_LIBS=false \
+        -DBUILD_TESTING=off \
+        -DCMAKE_BUILD_TYPE=Debug \
+        -DCMAKE_CXX_FLAGS="-DHWY_DISABLED_TARGETS=HWY_SSSE3 ${CXXFLAGS} -fPIC" \
+        -DCMAKE_C_FLAGS="-DHWY_DISABLED_TARGETS=HWY_SSSE3 ${CFLAGS} -fPIC" \
+        -DCMAKE_INSTALL_PREFIX=$WORK \
+        -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE \
+        -DJPEGXL_BUNDLE_SKCMS=false \
+        -DJPEGXL_ENABLE_BENCHMARK=false \
+        -DJPEGXL_ENABLE_EXAMPLES=false \
+        -DJPEGXL_ENABLE_FUZZERS=false \
+        -DJPEGXL_ENABLE_JPEGLI=false \
+        -DJPEGXL_ENABLE_JPEGLI=false \
+        -DJPEGXL_ENABLE_MANPAGES=OFF \
+        -DJPEGXL_ENABLE_SJPEG=false \
+        -DJPEGXL_ENABLE_SKCMS=false \
+        -DJPEGXL_ENABLE_TOOLS=true \
+        -DJPEGXL_ENABLE_VIEWERS=false \
+        -DJPEGXL_FORCE_SYSTEM_LCMS2=false \
+        "${SRC}/libjxl"
+    make -j$(nproc)
+    # libjxl claims to require libjxl_cms, but does not build/install one!
+    #sed -i 's/ libjxl_cms//' ./lib/libjxl.pc
+    make install
+    cp third_party/brotli/*.a $WORK/lib
+    cp third_party/brotli/*.pc $WORK/lib/pkgconfig
+    printf "==================\n"
+    printf "JXL version info\n"
+    ${WORK}/bin/cjxl --version
+    printf "==================\n"
+    popd
+fi
+
+if $enable_jasper
+then
+    printf "=== Building ${SRC}/jasper...\n"
+    # With all extras removed from libjasper
+    # PKG_CONFIG_PATH=/work/lib/pkgconfig:/usr/lib/pkgconfig pkg-config --static jasper --libs
+    # -L/work/lib -ljasper
+
+    JASPER_BUILD="${SRC}/jasper_build"
+    rm -rf "${JASPER_BUILD}"
+    mkdir -p "${JASPER_BUILD}"
+    pushd "${JASPER_BUILD}"
+    cmake -G "Unix Makefiles" -H"$SRC/jasper" \
+      -DCMAKE_BUILD_TYPE=Debug \
+      -DCMAKE_CXX_COMPILER=$CXX \
+      -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
+      -DCMAKE_C_COMPILER=$CC \
+      -DCMAKE_C_FLAGS="$CFLAGS -fPIC" \
+      -DCMAKE_INSTALL_PREFIX=$WORK \
+      -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE \
+      -DJAS_ENABLE_LIBHEIF=false \
+      -DJAS_ENABLE_LIBJPEG=false \
+      -DJAS_ENABLE_OPENGL=false \
+      -DJAS_ENABLE_OPENGL=false \
+      -DJAS_ENABLE_SHARED=false \
+      -DJAS_INCLUDE_BMP_CODEC=false \
+      -DJAS_INCLUDE_JPG_CODEC=false \
+      -DJAS_INCLUDE_MIF_CODEC=false \
+      -DJAS_INCLUDE_PNM_CODEC=false \
+      -DJAS_INCLUDE_RAS_CODEC=false \
+      "$SRC/jasper"
+    make -j$(nproc)
+    make install
+    popd
+fi
+
 if $enable_heif
 then
 
@@ -533,90 +617,6 @@
     popd
 fi
 
-if $enable_jxl
-then
-    # Build libjxl
-    #  PKG_CONFIG_PATH=/work/lib/pkgconfig:/usr/lib/pkgconfig pkg-config --static libjxl_threads --libs
-    #    -L/work/lib -ljxl_threads -lm
-    #  PKG_CONFIG_PATH=/work/lib/pkgconfig:/usr/lib/pkgconfig pkg-config --static libjxl --libs
-    #    -L/work/lib -L -ljxl -lm -lhwy -lbrotlienc -lbrotlidec -lbrotlicommon -ljxl_cms -lm
-    #
-    # Removed -DJPEGXL_FORCE_SYSTEM_LCMS2=true
-    # Added -DJPEGXL_ENABLE_SKCMS=true, -DJPEGXL_BUNDLE_SKCMS=true
-    printf "=== Building ${SRC}/libjxl...\n"
-    LIBJXL_BUILD="${SRC}/libjxl_build"
-    rm -rf "${LIBJXL_BUILD}"
-    mkdir -p "${LIBJXL_BUILD}"
-    pushd "${LIBJXL_BUILD}"
-    cmake \
-        -DBUILD_SHARED_LIBS=false \
-        -DBUILD_TESTING=off \
-        -DCMAKE_BUILD_TYPE=Debug \
-        -DCMAKE_CXX_FLAGS="-DHWY_DISABLED_TARGETS=HWY_SSSE3 ${CXXFLAGS} -fPIC" \
-        -DCMAKE_C_FLAGS="-DHWY_DISABLED_TARGETS=HWY_SSSE3 ${CFLAGS} -fPIC" \
-        -DCMAKE_INSTALL_PREFIX=$WORK \
-        -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE \
-        -DJPEGXL_BUNDLE_SKCMS=false \
-        -DJPEGXL_ENABLE_BENCHMARK=false \
-        -DJPEGXL_ENABLE_EXAMPLES=false \
-        -DJPEGXL_ENABLE_FUZZERS=false \
-        -DJPEGXL_ENABLE_JPEGLI=false \
-        -DJPEGXL_ENABLE_JPEGLI=false \
-        -DJPEGXL_ENABLE_MANPAGES=OFF \
-        -DJPEGXL_ENABLE_SJPEG=false \
-        -DJPEGXL_ENABLE_SKCMS=false \
-        -DJPEGXL_ENABLE_TOOLS=true \
-        -DJPEGXL_ENABLE_VIEWERS=false \
-        -DJPEGXL_FORCE_SYSTEM_LCMS2=false \
-        "${SRC}/libjxl"
-    make -j$(nproc)
-    # libjxl claims to require libjxl_cms, but does not build/install one!
-    #sed -i 's/ libjxl_cms//' ./lib/libjxl.pc
-    make install
-    cp third_party/brotli/*.a $WORK/lib
-    cp third_party/brotli/*.pc $WORK/lib/pkgconfig
-    printf "==================\n"
-    printf "JXL version info\n"
-    ${WORK}/bin/cjxl --version
-    printf "==================\n"
-    popd
-fi
-
-if $enable_jasper
-then
-    printf "=== Building ${SRC}/jasper...\n"
-    # With all extras removed from libjasper
-    # PKG_CONFIG_PATH=/work/lib/pkgconfig:/usr/lib/pkgconfig pkg-config --static jasper --libs
-    # -L/work/lib -ljasper
-
-    JASPER_BUILD="${SRC}/jasper_build"
-    rm -rf "${JASPER_BUILD}"
-    mkdir -p "${JASPER_BUILD}"
-    pushd "${JASPER_BUILD}"
-    cmake -G "Unix Makefiles" -H"$SRC/jasper" \
-      -DCMAKE_BUILD_TYPE=Debug \
-      -DCMAKE_CXX_COMPILER=$CXX \
-      -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-      -DCMAKE_C_COMPILER=$CC \
-      -DCMAKE_C_FLAGS="$CFLAGS -fPIC" \
-      -DCMAKE_INSTALL_PREFIX=$WORK \
-      -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE \
-      -DJAS_ENABLE_LIBHEIF=false \
-      -DJAS_ENABLE_LIBJPEG=false \
-      -DJAS_ENABLE_OPENGL=false \
-      -DJAS_ENABLE_OPENGL=false \
-      -DJAS_ENABLE_SHARED=false \
-      -DJAS_INCLUDE_BMP_CODEC=false \
-      -DJAS_INCLUDE_JPG_CODEC=false \
-      -DJAS_INCLUDE_MIF_CODEC=false \
-      -DJAS_INCLUDE_PNM_CODEC=false \
-      -DJAS_INCLUDE_RAS_CODEC=false \
-      "$SRC/jasper"
-    make -j$(nproc)
-    make install
-    popd
-fi
-
 # Libzip also wants Nettle, GnuTLS, MbedTLS, or OpenSSL (checked in
 # that order).  Each of these is quite an onerous dependency!
 # Hopefully not required in order to work. Libzip's own oss-fuzz build
diff -r bdf424d91f42 -r d6a967eb52ae magick/version.h
--- a/magick/version.h	Sun Nov 17 16:34:49 2024 -0600
+++ b/magick/version.h	Mon Nov 18 08:48:07 2024 -0600
@@ -38,8 +38,8 @@
 #define MagickLibVersion  0x282502
 #define MagickLibVersionText  "1.4"
 #define MagickLibVersionNumber 28,25,2
-#define MagickChangeDate   "20241117"
-#define MagickReleaseDate  "snapshot-20241117"
+#define MagickChangeDate   "20241118"
+#define MagickReleaseDate  "snapshot-20241118"
 
 /*
   The MagickLibInterfaceNewest and MagickLibInterfaceOldest defines
diff -r bdf424d91f42 -r d6a967eb52ae www/ChangeLog.html
--- a/www/ChangeLog.html	Sun Nov 17 16:34:49 2024 -0600
+++ b/www/ChangeLog.html	Mon Nov 18 08:48:07 2024 -0600
@@ -38,6 +38,13 @@
 
 <main id="graphicsmagick-changelog">
 <h1 class="title">GraphicsMagick ChangeLog</h1>
+<p>2024-11-18  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
+<blockquote>
+<ul class="simple">
+<li><p>fuzzing/oss-fuzz-build.sh: Move libheif build towards the end
+since it keeps adding more dependencies.</p></li>
+</ul>
+</blockquote>
 <p>2024-11-17  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
 <blockquote>
 <ul class="simple">