GraphicsMagick: fuzzing/oss-fuzz-build.sh: Build script improvem...

GraphicsMagick Commits <[email protected]> Fri, 17 Nov 2023 07:39:20 -0600
Newsgroups gmane.comp.video.graphicsmagick.cvs
Message-ID <mailman.3461.1700228376.7794.graphicsmagick-commit@lists.sourceforge.net>
changeset 8e37ef9a271c in /hg/GraphicsMagick
details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=8e37ef9a271c
summary: fuzzing/oss-fuzz-build.sh: Build script improvements.  Change 'freetype2' to 'freetype'. Add libde265, libheif, and libjxl to build.

diffstat:

 ChangeLog                              |   6 ++++++
 VisualMagick/installer/inc/version.isx |   4 ++--
 fuzzing/oss-fuzz-build.sh              |  34 +++++++++++++++++++++++++++++-----
 magick/version.h                       |   4 ++--
 www/Changelog.html                     |   8 ++++++++
 5 files changed, 47 insertions(+), 9 deletions(-)

diffs (120 lines):

diff -r 1a78042ce25a -r 8e37ef9a271c ChangeLog
--- a/ChangeLog	Thu Nov 16 11:49:56 2023 -0600
+++ b/ChangeLog	Fri Nov 17 07:39:15 2023 -0600
@@ -1,3 +1,9 @@
+2023-11-17  Bob Friesenhahn  <[email protected]>
+
+	* fuzzing/oss-fuzz-build.sh: Build script improvements.  Change
+	'freetype2' to 'freetype'. Add libde265, libheif, and libjxl to
+	build.
+
 2023-11-16  Bob Friesenhahn  <[email protected]>
 
 	* www/thanks.rst: Provide attributions expected by
diff -r 1a78042ce25a -r 8e37ef9a271c VisualMagick/installer/inc/version.isx
--- a/VisualMagick/installer/inc/version.isx	Thu Nov 16 11:49:56 2023 -0600
+++ b/VisualMagick/installer/inc/version.isx	Fri Nov 17 07:39:15 2023 -0600
@@ -10,5 +10,5 @@
 
 #define public MagickPackageName "GraphicsMagick"
 #define public MagickPackageVersion "1.4"
-#define public MagickPackageVersionAddendum ".020231116"
-#define public MagickPackageReleaseDate "snapshot-20231116"
+#define public MagickPackageVersionAddendum ".020231117"
+#define public MagickPackageReleaseDate "snapshot-20231117"
diff -r 1a78042ce25a -r 8e37ef9a271c fuzzing/oss-fuzz-build.sh
--- a/fuzzing/oss-fuzz-build.sh	Thu Nov 16 11:49:56 2023 -0600
+++ b/fuzzing/oss-fuzz-build.sh	Fri Nov 17 07:39:15 2023 -0600
@@ -35,8 +35,8 @@
 make install
 popd
 
-# build libjpeg
-printf "=== Building libjpeg...\n"
+# build libjpeg-turbo
+printf "=== Building libjpeg-turbo...\n"
 pushd "$SRC/libjpeg-turbo"
 CFLAGS="$CFLAGS -fPIC" cmake . -DCMAKE_INSTALL_PREFIX="$WORK" -DENABLE_STATIC=on -DENABLE_SHARED=on -DWITH_JPEG8=1 -DWITH_SIMD=0
 make -j$(nproc)
@@ -70,15 +70,30 @@
 make install
 popd
 
-# Build freetype2
-printf "=== Building freetype2...\n"
-pushd "$SRC/freetype2"
+# Build freetype
+printf "=== Building freetype...\n"
+pushd "$SRC/freetype"
 ./autogen.sh
 PKG_CONFIG_PATH="$WORK/lib/pkgconfig" ./configure CPPFLAGS="-I$WORK/include" CFLAGS="$CFLAGS" LDFLAGS="${LDFLAGS:-} -L$WORK/lib" --prefix="$WORK" --enable-freetype-config
 make -j$(nproc)
 make install
 popd
 
+# Build libde265
+pushd "$SRC/libde265"
+./autogen.sh
+./configure --disable-shared --prefix="$WORK"
+make -j$(nproc)
+make install
+popd
+
+# Build libheif
+pushd "$SRC/libheif"
+cmake . -DCMAKE_INSTALL_PREFIX=$WORK -DBUILD_SHARED_LIBS=off -DBUILD_TESTING=off -DWITH_EXAMPLES=off -DENABLE_PLUGIN_LOADING=off -DWITH_JPEG_DECODER=off -DWITH_JPEG_ENCODER=off -DCMAKE_BUILD_TYPE=Release
+make -j$(nproc)
+make install
+popd
+
 #printf "=== Building libxml2...\n"
 #pushd "$SRC/libxml2"
 #./autogen.sh --disable-shared --without-debug --without-legacy --without-python --without-schematron --without-schemas --prefix="${WORK}"
@@ -101,6 +116,15 @@
 make "-j$(nproc)"
 make install
 
+# Build libjxl
+pushd "$SRC/libjxl"
+cmake . -DCMAKE_INSTALL_PREFIX=$WORK -DBUILD_TESTING=off -DBUILD_SHARED_LIBS=false -DJPEGXL_FORCE_SYSTEM_LCMS2=true -DJPEGXL_ENABLE_EXAMPLES=false -DJPEGXL_ENABLE_FUZZERS=false -DJPEGXL_ENABLE_TOOLS=false -DJPEGXL_ENABLE_JPEGLI=false -DCMAKE_C_FLAGS="$CFLAGS" -DCMAKE_CXX_FLAGS="$CXXFLAGS"
+make -j$(nproc)
+make install
+cp third_party/brotli/*.a $WORK/lib
+cp third_party/brotli/*.pc $WORK/lib/pkgconfig
+popd
+
 # Order libraries in linkage dependency order so libraries on the
 # right provide symbols needed by libraries to the left, to the
 # maximum extent possible.
diff -r 1a78042ce25a -r 8e37ef9a271c magick/version.h
--- a/magick/version.h	Thu Nov 16 11:49:56 2023 -0600
+++ b/magick/version.h	Fri Nov 17 07:39:15 2023 -0600
@@ -38,8 +38,8 @@
 #define MagickLibVersion  0x272404
 #define MagickLibVersionText  "1.4"
 #define MagickLibVersionNumber 27,24,4
-#define MagickChangeDate   "20231116"
-#define MagickReleaseDate  "snapshot-20231116"
+#define MagickChangeDate   "20231117"
+#define MagickReleaseDate  "snapshot-20231117"
 
 /*
   The MagickLibInterfaceNewest and MagickLibInterfaceOldest defines
diff -r 1a78042ce25a -r 8e37ef9a271c www/Changelog.html
--- a/www/Changelog.html	Thu Nov 16 11:49:56 2023 -0600
+++ b/www/Changelog.html	Fri Nov 17 07:39:15 2023 -0600
@@ -37,6 +37,14 @@
 </div>
 
 <div class="document">
+<p>2023-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">
+<li><p>fuzzing/oss-fuzz-build.sh: Build script improvements.  Change
+'freetype2' to 'freetype'. Add libde265, libheif, and libjxl to
+build.</p></li>
+</ul>
+</blockquote>
 <p>2023-11-16  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">