Opened 3 weeks ago

Closed 3 weeks ago

#19626 closed enhancement (fixed)

Add libjxl to the book in support of gnome-backgrounds and others

Reported by: Douglas R. Reno Owned by: Douglas R. Reno
Priority: normal Milestone: 12.2
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

See ticket #19625 for more details. gnome-backgrounds now primarily ships files in JXL format, so we need to add libjxl to the book for the proper support.

KF6, ImageMagick, WebKitGTK, Imlib2, GIMP, gdk-pixbuf, and ffmpeg will need adjustments as well to support it. I will leave KF6 alone though other than turning the dependency internal

Change History (7)

comment:1 by Douglas R. Reno, 3 weeks ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:2 by Xi Ruoyao, 3 weeks ago

libjxl needs highway (https://github.com/google/highway/archive/1.1.0/highway-1.1.0.tar.gz) in turn. Highway is described "Performance-portable, length-agnostic SIMD with runtime dispatch."

comment:3 by Xi Ruoyao, 3 weeks ago

Highway:

cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON -G Ninja

comment:4 by Xi Ruoyao, 3 weeks ago

libjxl:

cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON -DJPEGXL_ENABLE_SKCMS=OFF -DJPEGXL_ENABLE_SJPEG=OFF -G Ninja

I don't know what "skcms" and "sjpeg" are for, so I just disabled them.

in reply to:  4 comment:5 by Xi Ruoyao, 3 weeks ago

Replying to Xi Ruoyao:

libjxl:

cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=ON -DJPEGXL_ENABLE_SKCMS=OFF -DJPEGXL_ENABLE_SJPEG=OFF -G Ninja

Add -DJPEGXL_ENABLE_PLUGINS=ON here to enable the gdk-pixbuf loader. And run gdk-pixbuf-query-loaders --update-cache after installation.

Last edited 3 weeks ago by Xi Ruoyao (previous) (diff)

comment:6 by Tim Tassonis, 3 weeks ago

I have built with:

sed -i 's,JPEGXL_ENABLE_SKCMS OR JPEGXL_ENABLE_PLUGINS,JPEGXL_ENABLE_SKCMS,g' third_party/CMakeLists.txt


mkdir build
cd build || exit
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release \
      -DBUILD_TESTING=OFF \
        -DJPEGXL_ENABLE_BENCHMARK:BOOL='false' \
        -DJPEGXL_ENABLE_EXAMPLES:BOOL='false' \
        -DJPEGXL_ENABLE_FUZZERS:BOOL='false' \
       -DJPEGXL_ENABLE_VIEWERS:BOOL='false' \
      -DJPEGXL_BUNDLE_SKCMS:BOOL=OFF \
      -DJPEGXL_ENABLE_PLUGINS=ON \
      -DJPEGXL_ENABLE_SJPEG:BOOL=OFF \
      -DJPEGXL_ENABLE_SKCMS:BOOL=OFF \
      -DJPEGXL_FORCE_SYSTEM_HWY:BOOL=ON \
      -DJPEGXL_FORCE_SYSTEM_LCMS2:BOOL=ON \
      ..

Works find, also builds the pixbuf stuff.

comment:7 by Douglas R. Reno, 3 weeks ago

Resolution: fixed
Status: assignedclosed

Fixed at commits...

ea9a250efb4b0dd26015f15696ec54360cb0c3b1 - Highway addition

07cb2c53e601400d153dee2c05fb36207bcd1de7 - libjxl addition

334d51d97747885a6d35be49f04c3a3bb9dc5034 - gdk-pixbuf optional runtime dependency

abf1c5897541668c1b0578b01e0d9b31cc56040f - make external deps internal in imlib2

368702e68391a81f2c9d4077a3756d47754ff7c3 - make external dep internal in KF6 (needs to be tested by Bruce with new KF6)

33a303b70734b24b0827a5a17d5cce69ad0bf468 - add runtime dependency to gnome-backgrounds

545a53d5a13ca039e4c831a9dcdf663966352b20 - add optional dependency on libjxl to ffmpeg

9df3180de7ec450fc54eaaee2376a9f11af0e99d - make libjxl internal in ImageMagick

0caa916c0901410c0a4785361ed01a1c7af04af9 - add changelog entries

d0c049fafe84303204ac1e4a0b2b7cb56ce5350f - update to WebKitGTK-2.44.1 (including jxl changes)

Note: See TracTickets for help on using tickets.