GraphicsMagick: fuzzing/oss-fuzz-build.sh: Add -DJPEGXL_ENABLE_S...
GraphicsMagick Commits <[email protected]> Sat, 09 Dec 2023 18:35:21 -0600
| Newsgroups | gmane.comp.video.graphicsmagick.cvs |
|---|---|
| Message-ID | <mailman.11033.1702168537.7940.graphicsmagick-commit@lists.sourceforge.net> |
changeset 71e92633585d in /hg/GraphicsMagick details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=71e92633585d summary: fuzzing/oss-fuzz-build.sh: Add -DJPEGXL_ENABLE_SKCMS=false to libjxl build since skcms is not working with static linkage. diffstat: ChangeLog | 3 + fuzzing/oss-fuzz-build.sh | 78 ++++++++++++++++++++++++---------------------- www/Changelog.html | 2 + 3 files changed, 46 insertions(+), 37 deletions(-) diffs (119 lines): diff -r 32ae2d8f103d -r 71e92633585d ChangeLog --- a/ChangeLog Sat Dec 09 14:11:47 2023 -0600 +++ b/ChangeLog Sat Dec 09 18:35:18 2023 -0600 @@ -1,5 +1,8 @@ 2023-12-09 Bob Friesenhahn <[email protected]> + * fuzzing/oss-fuzz-build.sh: Add -DJPEGXL_ENABLE_SKCMS=false to + libjxl build since skcms is not working with static linkage. + * configure.ac: Try really hard to configure everything, even if pkg-config is not present or misbehaves. If pkg-config is not present, it may be necessary to manually set CPPFLAGs in order to diff -r 32ae2d8f103d -r 71e92633585d fuzzing/oss-fuzz-build.sh --- a/fuzzing/oss-fuzz-build.sh Sat Dec 09 14:11:47 2023 -0600 +++ b/fuzzing/oss-fuzz-build.sh Sat Dec 09 18:35:18 2023 -0600 @@ -232,7 +232,7 @@ fi mv "$SRC"/jbigkit/libjbig/*.a "$WORK/lib/" - mv "$SRC"/jbigkit/libjbig/*.h "$WORK/include/" + cp -p "$SRC"/jbigkit/libjbig/*.h "$WORK/include/" popd fi @@ -427,42 +427,46 @@ 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 - # - printf "=== Building ${SRC}/libjxl...\n" - LIBJXL_BUILD="${SRC}/libjxl_build" - rm -rf "${LIBJXL_BUILD}" - mkdir -p "${LIBJXL_BUILD}" - pushd "${LIBJXL_BUILD}" - cmake \ - -DCMAKE_INSTALL_PREFIX=$WORK \ - -DBUILD_TESTING=off \ - -DBUILD_SHARED_LIBS=false \ - -DCMAKE_BUILD_TYPE=Release \ - -DJPEGXL_ENABLE_BENCHMARK=false \ - -DJPEGXL_ENABLE_EXAMPLES=false \ - -DJPEGXL_ENABLE_FUZZERS=false \ - -DJPEGXL_ENABLE_JPEGLI=false \ - -DJPEGXL_ENABLE_MANPAGES=OFF \ - -DJPEGXL_ENABLE_SJPEG=false \ - -DJPEGXL_ENABLE_TOOLS=false \ - -DJPEGXL_ENABLE_VIEWERS=false \ - -DJPEGXL_ENABLE_JPEGLI=false \ - -DJPEGXL_FORCE_SYSTEM_LCMS2=true \ - -DCMAKE_C_FLAGS="-DHWY_DISABLED_TARGETS=HWY_SSSE3 ${CFLAGS} -fPIC" \ - -DCMAKE_CXX_FLAGS="-DHWY_DISABLED_TARGETS=HWY_SSSE3 ${CXXFLAGS} -fPIC" \ - "${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 - popd + # 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 \ + -DCMAKE_INSTALL_PREFIX=$WORK \ + -DBUILD_TESTING=off \ + -DBUILD_SHARED_LIBS=false \ + -DCMAKE_BUILD_TYPE=Release \ + -DJPEGXL_ENABLE_BENCHMARK=false \ + -DJPEGXL_ENABLE_EXAMPLES=false \ + -DJPEGXL_ENABLE_FUZZERS=false \ + -DJPEGXL_ENABLE_JPEGLI=false \ + -DJPEGXL_ENABLE_MANPAGES=OFF \ + -DJPEGXL_ENABLE_SJPEG=false \ + -DJPEGXL_ENABLE_TOOLS=false \ + -DJPEGXL_ENABLE_VIEWERS=false \ + -DJPEGXL_ENABLE_JPEGLI=false \ + -DJPEGXL_ENABLE_SKCMS=false \ + -DJPEGXL_BUNDLE_SKCMS=false \ + -DJPEGXL_FORCE_SYSTEM_LCMS2=false \ + -DCMAKE_C_FLAGS="-DHWY_DISABLED_TARGETS=HWY_SSSE3 ${CFLAGS} -fPIC" \ + -DCMAKE_CXX_FLAGS="-DHWY_DISABLED_TARGETS=HWY_SSSE3 ${CXXFLAGS} -fPIC" \ + "${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 + popd fi if $enable_jasper diff -r 32ae2d8f103d -r 71e92633585d www/Changelog.html --- a/www/Changelog.html Sat Dec 09 14:11:47 2023 -0600 +++ b/www/Changelog.html Sat Dec 09 18:35:18 2023 -0600 @@ -40,6 +40,8 @@ <p>2023-12-09 Bob Friesenhahn <<a class="reference external" href="mailto:bfriesen%40simple.dallas.tx.us">bfriesen<span>@</span>simple<span>.</span>dallas<span>.</span>tx<span>.</span>us</a>></p> <blockquote> <ul class="simple"> +<li><p>fuzzing/oss-fuzz-build.sh: Add -DJPEGXL_ENABLE_SKCMS=false to +libjxl build since skcms is not working with static linkage.</p></li> <li><p>configure.ac: Try really hard to configure everything, even if pkg-config is not present or misbehaves. If pkg-config is not present, it may be necessary to manually set CPPFLAGs in order to