Le Mon, Feb 20, 2023 at 10:45:25AM +0100, Landry Breuil a écrit : > Le Sat, Feb 18, 2023 at 02:57:06PM +0100, Landry Breuil a écrit : > > Hi, > > > > here's a new port for libjxl (https://jpegxl.info/, > > https://jpegxl.info/why-jxl.html) and its dependency > > (https://github.com/google/highway). > > > > event if jpegxl support is being dropped from chromium, and was never > > enabled in firefox, it is supported by many other things in the > > ecosystem. Cf https://cloudinary.com/blog/the-case-for-jpeg-xl for > > arguments. My personal usecase is for geo/gdal. > > > > highway's tests all pass on i386/amd64, and for jpegxl it's "not so > > bad": > > test-0.7.0-amd64.log:80% tests passed, 384 tests failed out of 1957 > > test-0.8.1-amd64.log:76% tests passed, 824 tests failed out of 3488 > > test-0.8.1-i386.log:76% tests passed, 825 tests failed out of 3488 > > > > i've looked in the portstree for potential consumers, based on the ports > > depending on it in freebsd's portstree: > > > > - graphics/libvips: supported since 8.11, our port is at 8.9 > > - graphics/imlib2: has a plugin to support the format > > - multimedia/aom: disabled by default, behind -DCONFIG_TUNE_BUTTERAUGLI=1 > > - gimp/snapshot: already force-disabled via -Djpeg-xl=disabled > > - gimp/stable: uses it if found (checking for libjxl >= 0.6.1... yes) > > - graphics/darktable: needs 4.2 > > (https://github.com/darktable-org/darktable/issues/10866) > > - sdl2-image: support added in 2.6 > > - graphics/ffmpeg: disabled by default > > (https://github.com/FFmpeg/FFmpeg/blob/master/configure#L244) > > - graphics/ImageMagick: needs --with-jxl, not active by default ? > > - graphics/GraphicsMagick uses it if found (JPEG-XL --with-jxl=yes yes) > > - graphics/gthumb: uses it if found > > (https://gitlab.gnome.org/GNOME/gthumb/-/blob/master/meson_options.txt#L61) > > - graphics/geeqie: already force-disabled via -Djpegxl=disabled > > - geo/gdal: uses it if found, only as a plain driver and sadly not > > available for tiff compression ( Cannot build JXL as a TIFF codec as > > it requires building with -DGDAL_USE_TIFF_INTERNAL=ON) > > attached are 3 diffs to enable jxl support in gimp/stable, gdal & > graphicsmagick (without REVISION bump for readability, but will be > included if commited). I can also disable support for jxl by default in > those until maintainer decides what to do with it :)
And two diffs enabling support in krita and kimageformats as those will be picked up by default. What do you think about it rafael ? I can also eventually find the right cmake option to disable the detection of libjxl. thanks tb@ for running a full search for me! feedback/oks for highway & libjxl (and what to do about the consumers) welcome! Landry > > Landry > Index: Makefile > =================================================================== > RCS file: /cvs/ports/graphics/GraphicsMagick/Makefile,v > retrieving revision 1.69 > diff -u -r1.69 Makefile > --- Makefile 31 Oct 2022 23:14:54 -0000 1.69 > +++ Makefile 18 Feb 2023 17:18:52 -0000 > @@ -19,6 +19,7 @@ > WANTLIB += ${COMPILER_LIBCXX} ICE SM X11 Xau Xdmcp Xext aom bz2 c > WANTLIB += dav1d de265 freetype heif iconv jasper jbig jpeg lcms2 > WANTLIB += ltdl lzma m png tiff webp webpmux wmflite-0.2 x265 xcb > +WANTLIB += brotlicommon brotlidec brotlienc hwy jxl jxl_threads > WANTLIB += xml2 z zstd > > WANTLIB += perl # uses perl ABI > @@ -34,6 +35,7 @@ > graphics/jbigkit \ > graphics/lcms2 \ > graphics/libwebp \ > + graphics/libjxl \ > graphics/libwmf \ > graphics/png \ > graphics/tiff \ > Index: pkg/PLIST > =================================================================== > RCS file: /cvs/ports/graphics/GraphicsMagick/pkg/PLIST,v > retrieving revision 1.27 > diff -u -r1.27 PLIST > --- pkg/PLIST 24 Apr 2022 21:08:29 -0000 1.27 > +++ pkg/PLIST 18 Feb 2023 17:18:52 -0000 > @@ -159,6 +159,8 @@ > @so lib/GraphicsMagick/modules-Q16/coders/jp2.so > lib/GraphicsMagick/modules-Q16/coders/jpeg.la > @so lib/GraphicsMagick/modules-Q16/coders/jpeg.so > +lib/GraphicsMagick/modules-Q16/coders/jxl.la > +@so lib/GraphicsMagick/modules-Q16/coders/jxl.so > lib/GraphicsMagick/modules-Q16/coders/label.la > @so lib/GraphicsMagick/modules-Q16/coders/label.so > lib/GraphicsMagick/modules-Q16/coders/locale.la > ? 2.3-configure > ? 2.4-configure > ? 3.4.raster.formats > ? 3.4.vector.formats > ? 3.5.raster.formats > ? 3.5.vector.formats > ? Makefile.internaltiff > ? Makefile.rc > ? configure > ? configure.log > ? files > ? gdal-3.6.1-libgdal.so.45.0 > ? gdal-3.6.1rc1-libgdal.so.44.0 > ? gdal-3.6.2-libgdal.so.45.0 > ? patch-swig_python_setup_py_in > Index: Makefile > =================================================================== > RCS file: /cvs/ports/geo/gdal/Makefile,v > retrieving revision 1.121 > diff -u -r1.121 Makefile > --- Makefile 8 Jan 2023 16:25:09 -0000 1.121 > +++ Makefile 18 Feb 2023 17:18:41 -0000 > @@ -48,6 +48,7 @@ > print/poppler \ > graphics/png \ > graphics/giflib \ > + graphics/libjxl \ > graphics/libwebp \ > graphics/jpeg \ > graphics/openjp2 \ > @@ -56,7 +57,7 @@ > devel/geotiff>=1.5.0 > > WANTLIB-main = c crypto curl expat freexl geos_c geotiff \ > - gif hdf5 iconv jpeg json-c lzma lz4 m \ > + gif hdf5 iconv jpeg json-c jxl jxl_threads lzma lz4 m \ > netcdf openjp2 pcre2-8 png poppler pq proj pthread > qhull_r \ > spatialite sqlite3 ssl tiff xml2 webp z zstd \ > ${COMPILER_LIBCXX} > Index: Makefile > =================================================================== > RCS file: /cvs/ports/graphics/gimp/stable/Makefile,v > retrieving revision 1.158 > diff -u -r1.158 Makefile > --- Makefile 24 Jan 2023 17:53:35 -0000 1.158 > +++ Makefile 18 Feb 2023 17:18:32 -0000 > @@ -23,6 +23,7 @@ > PERMIT_PACKAGE= Yes > > WANTLIB += ${COMPILER_LIBCXX} > +WANTLIB += brotlicommon brotlidec brotlienc hwy jxl jxl_threads > WANTLIB += ICE Iex-3_1 IlmThread-3_1 Imath-3_1 OpenEXR-3_1 OpenEXRCore-3_1 > WANTLIB += OpenEXRUtil-3_1 SM X11 Xau Xcomposite Xcursor Xdamage > WANTLIB += Xdmcp Xext Xfixes Xi Xinerama Xmu Xpm Xrandr Xrender > @@ -76,6 +77,7 @@ > graphics/jpeg \ > graphics/lcms2 \ > graphics/libgexiv2 \ > + graphics/libjxl \ > graphics/libmng \ > graphics/libmypaint>=1.5.0 \ > graphics/libwmf \ > Index: pkg/PLIST > =================================================================== > RCS file: /cvs/ports/graphics/gimp/stable/pkg/PLIST,v > retrieving revision 1.54 > diff -u -r1.54 PLIST > --- pkg/PLIST 10 Sep 2022 12:49:22 -0000 1.54 > +++ pkg/PLIST 18 Feb 2023 17:18:33 -0000 > @@ -385,6 +385,8 @@ > @bin lib/gimp/2.0/plug-ins/file-jp2-load/file-jp2-load > lib/gimp/2.0/plug-ins/file-jpeg/ > @bin lib/gimp/2.0/plug-ins/file-jpeg/file-jpeg > +lib/gimp/2.0/plug-ins/file-jpegxl/ > +@bin lib/gimp/2.0/plug-ins/file-jpegxl/file-jpegxl > lib/gimp/2.0/plug-ins/file-mng/ > @bin lib/gimp/2.0/plug-ins/file-mng/file-mng > lib/gimp/2.0/plug-ins/file-openraster/
Index: Makefile =================================================================== RCS file: /cvs/ports/devel/kf5/kimageformats/Makefile,v retrieving revision 1.17 diff -u -r1.17 Makefile --- Makefile 23 Oct 2022 06:08:24 -0000 1.17 +++ Makefile 22 Feb 2023 16:00:11 -0000 @@ -1,12 +1,14 @@ COMMENT = KDE plugins for QImage supporting extra file formats DISTNAME = kimageformats-${VERSION} +REVISION = 0 WANTLIB += ${COMPILER_LIBCXX} Iex-3_1 IlmThread-3_1 Imath-3_1 WANTLIB += KF5Archive OpenEXR-3_1 Qt5Core Qt5Gui Qt5PrintSupport -WANTLIB += Qt5Widgets avif m raw z +WANTLIB += Qt5Widgets avif jxl jxl_threads m raw z LIB_DEPENDS = devel/kf5/karchive>=${MODKF5_VERSION} \ graphics/libavif \ + graphics/libjxl \ graphics/libraw \ graphics/openexr Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/devel/kf5/kimageformats/pkg/PLIST,v retrieving revision 1.6 diff -u -r1.6 PLIST --- pkg/PLIST 23 Oct 2022 06:08:24 -0000 1.6 +++ pkg/PLIST 22 Feb 2023 16:00:11 -0000 @@ -3,6 +3,7 @@ @so lib/qt5/plugins/imageformats/kimg_eps.so @so lib/qt5/plugins/imageformats/kimg_exr.so @so lib/qt5/plugins/imageformats/kimg_hdr.so +@so lib/qt5/plugins/imageformats/kimg_jxl.so @so lib/qt5/plugins/imageformats/kimg_kra.so @so lib/qt5/plugins/imageformats/kimg_ora.so @so lib/qt5/plugins/imageformats/kimg_pcx.so @@ -22,6 +23,7 @@ share/kservices5/qimageioplugins/exr.desktop share/kservices5/qimageioplugins/hdr.desktop share/kservices5/qimageioplugins/jp2.desktop +share/kservices5/qimageioplugins/jxl.desktop share/kservices5/qimageioplugins/kra.desktop share/kservices5/qimageioplugins/ora.desktop share/kservices5/qimageioplugins/pcx.desktop
Index: Makefile =================================================================== RCS file: /cvs/ports/graphics/krita/Makefile,v retrieving revision 1.66 diff -u -r1.66 Makefile --- Makefile 7 Jan 2023 20:21:34 -0000 1.66 +++ Makefile 23 Feb 2023 08:47:43 -0000 @@ -2,7 +2,7 @@ VERSION = 5.1.5 DISTNAME = krita-${VERSION} -REVISION = 0 +REVISION = 1 SHARED_LIBS += kritabasicflakes 4.1 # 16.0 SHARED_LIBS += kritacolord 2.0 # 16.0 @@ -54,7 +54,7 @@ WANTLIB += Qt5Svg Qt5Widgets Qt5X11Extras Qt5Xml SM X11 Xext Xi WANTLIB += boost_system-mt c exiv2 fftw3 gif gsl gslcblas heif WANTLIB += jpeg lcms2 m mypaint openjp2 png poppler poppler-qt5 -WANTLIB += quazip1-qt5 raw tiff turbojpeg webp z +WANTLIB += quazip1-qt5 raw tiff turbojpeg webp z jxl jxl_threads MASTER_SITES = ${MASTER_SITE_KDE:=stable/krita/${VERSION}/} EXTRACT_SUFX = .tar.xz @@ -91,6 +91,7 @@ graphics/giflib \ graphics/jpeg \ graphics/lcms2 \ + graphics/libjxl \ graphics/libmypaint \ graphics/libraw \ graphics/libwebp \ Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/graphics/krita/pkg/PLIST,v retrieving revision 1.27 diff -u -r1.27 PLIST --- pkg/PLIST 17 Dec 2022 10:01:45 -0000 1.27 +++ pkg/PLIST 23 Feb 2023 08:47:43 -0000 @@ -75,6 +75,8 @@ @so lib/kritaplugins/kritajp2import.so @so lib/kritaplugins/kritajpegexport.so @so lib/kritaplugins/kritajpegimport.so +@so lib/kritaplugins/kritajxlexport.so +@so lib/kritaplugins/kritajxlimport.so @so lib/kritaplugins/kritakraexport.so @so lib/kritaplugins/kritakraimport.so @so lib/kritaplugins/kritakrzexport.so @@ -235,6 +237,7 @@ share/applications/krita_heightmap.desktop share/applications/krita_jp2.desktop share/applications/krita_jpeg.desktop +share/applications/krita_jxl.desktop share/applications/krita_kra.desktop share/applications/krita_krz.desktop share/applications/krita_ora.desktop