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

Reply via email to