Compare commits
43 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ec1bcb6edd | ||
|
|
fbe00f3846 |
||
|
|
4aa1c6f773 | ||
|
|
5e4a034b68 | ||
|
|
832e061db2 | ||
|
|
37e9aa2a61 | ||
|
|
2e24065015 | ||
|
|
94959b88d3 | ||
|
|
88ff0faff8 | ||
|
|
33965822fb | ||
|
|
e87d18bbd6 | ||
|
|
19f643135c | ||
|
|
194e176568 | ||
|
|
58fa8f9758 | ||
|
|
1def8f6932 | ||
|
|
a0c453281b | ||
|
|
2a68871b2c | ||
|
|
a0530bedaf | ||
|
|
31a7d99680 | ||
|
|
0c6ab9af7d | ||
|
|
4eb04f897e | ||
|
|
9072eb333c | ||
|
|
bf363763c4 | ||
|
|
6909d270e1 | ||
|
|
abc05881f4 | ||
|
|
eb58e81e20 | ||
|
|
6a5bd4a235 | ||
|
|
c16b67d622 | ||
|
|
ab2f57e888 | ||
|
|
572b55ef72 | ||
|
|
f4f14a869a | ||
|
|
3b31ff8895 | ||
|
|
c20ec23f31 | ||
|
|
b907c00f32 | ||
|
|
fc8e7056f8 | ||
|
|
2dedc270ee | ||
|
|
2227db0c67 | ||
|
|
87c1389a3c | ||
|
|
1ee24d18db | ||
|
|
8e888947ef | ||
|
|
b3c23e4da9 | ||
|
|
c1ccd8cc9f | ||
|
|
9dcd97772d |
6 changed files with 156 additions and 58 deletions
19
.gitignore
vendored
19
.gitignore
vendored
|
|
@ -4,3 +4,22 @@
|
|||
/third_party-0.5.tar.gz
|
||||
/jpegxl-0.6.1.tar.gz
|
||||
/third_party-0.6.1.tar.gz
|
||||
/jpegxl-c426256.tar.gz
|
||||
/third_party-c426256.tar.gz
|
||||
/jpegxl-0.7rc.tar.gz
|
||||
/third_party-0.7rc.tar.gz
|
||||
/jpegxl-0.7.0.tar.gz
|
||||
/third_party-0.7.0.tar.gz
|
||||
/jpegxl-0.8.1.tar.gz
|
||||
/third_party-0.8.1.tar.gz
|
||||
/jpegxl-0.8.2.tar.gz
|
||||
/third_party-0.8.2.tar.gz
|
||||
/jpegxl-0.9.2.tar.gz
|
||||
/third_party-0.9.2.tar.gz
|
||||
/jpegxl-0.10.2.tar.gz
|
||||
/third_party-0.10.2.tar.gz
|
||||
/jpegxl-0.10.3.tar.gz
|
||||
/third_party-0.10.3.tar.gz
|
||||
/jpegxl-0.11.1.tar.gz
|
||||
/third_party-0.11.1.tar.gz
|
||||
/testdata-0.11.1.tar.gz
|
||||
|
|
|
|||
17
.packit.yaml
Normal file
17
.packit.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# See the documentation for more information:
|
||||
# https://packit.dev/docs/configuration/
|
||||
|
||||
upstream_project_url: https://github.com/libjxl/libjxl
|
||||
upstream_tag_template: v{version}
|
||||
|
||||
# run opencv-clean.sh
|
||||
# the sed currently hacks the script so that the version is correctly set and the sources upload is handled by Packit
|
||||
actions:
|
||||
pre-sync:
|
||||
- bash -c "cd ${PACKIT_DOWNSTREAM_REPO}; sed '1d' ./update_third_party.sh | VERSION=${PACKIT_PROJECT_VERSION} bash"
|
||||
|
||||
jobs:
|
||||
- job: pull_from_upstream
|
||||
trigger: release
|
||||
dist_git_branches:
|
||||
- fedora-rawhide
|
||||
3
README.packit
Normal file
3
README.packit
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
This repository is maintained by packit.
|
||||
https://packit.dev/
|
||||
The file was generated using packit 0.104.1.
|
||||
150
jpegxl.spec
150
jpegxl.spec
|
|
@ -1,12 +1,16 @@
|
|||
# epel 8 need this other already have it
|
||||
%undefine __cmake_in_source_build
|
||||
|
||||
# developper recommendation
|
||||
%global toolchain clang
|
||||
|
||||
# Uncomment for special build to rebuild aom on bumped soname.
|
||||
#global new_soname 1
|
||||
%global sover_old 0.6
|
||||
%global sover 0.6
|
||||
|
||||
%global gdk_pixbuf_moduledir $(pkgconf gdk-pixbuf-2.0 --variable=gdk_pixbuf_moduledir)
|
||||
%global sover_old 0.10
|
||||
%global sover 0.11
|
||||
|
||||
%bcond_with gimp_plugin
|
||||
%if 0%{?fedora}
|
||||
%bcond_without gimp_plugin
|
||||
%bcond_without tcmalloc
|
||||
%endif
|
||||
|
||||
|
|
@ -15,7 +19,8 @@ This package contains a reference implementation of JPEG XL (encoder and
|
|||
decoder).}
|
||||
|
||||
Name: jpegxl
|
||||
Version: 0.6.1
|
||||
Epoch: 1
|
||||
Version: 0.11.1
|
||||
Release: %autorelease %{?new_soname:-p -e 0~sonamebump}
|
||||
Summary: JPEG XL image format reference implementation
|
||||
|
||||
|
|
@ -23,70 +28,76 @@ Summary: JPEG XL image format reference implementation
|
|||
# lodepng: zlib
|
||||
# sjpeg: ASL 2.0
|
||||
# skcms: BSD
|
||||
License: BSD and ASL 2.0 and zlib
|
||||
License: BSD-3-Clause AND Apache-2.0 AND Zlib
|
||||
URL: https://jpeg.org/jpegxl/
|
||||
VCS: https://github.com/libjxl/libjxl
|
||||
Source0: %vcs/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||
Source0: https://github.com/libjxl/libjxl/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||
|
||||
# git clone https://github.com/libjxl/libjxl
|
||||
# cd libjxl/
|
||||
# git checkout v%%{version}
|
||||
# git submodule init ; git submodule update
|
||||
# rm -r third_party/brotli/ third_party/difftest_ng/ third_party/googletest/
|
||||
# rm -r third_party/HEVCSoftware/ third_party/highway/
|
||||
# rm -r third_party/IQA-optimization/ third_party/lcms/
|
||||
# rm -r third_party/skcms/profiles/ third_party/vmaf/ third_party/testdata/
|
||||
# tar -zcvf ../third_party-%%{version}.tar.gz third_party/
|
||||
# set VERSION and run ./update_third_party.sh to get Source1 and Source2
|
||||
Source1: third_party-%{version}.tar.gz
|
||||
Source2: testdata-%{version}.tar.gz
|
||||
|
||||
BuildRequires: asciidoc
|
||||
BuildRequires: cmake
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: extra-cmake-modules
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: clang
|
||||
BuildRequires: giflib-devel
|
||||
%if %{with tcmalloc}
|
||||
BuildRequires: gperftools-devel
|
||||
%endif
|
||||
BuildRequires: ninja-build
|
||||
%if %{with gimp_plugin}
|
||||
BuildRequires: pkgconfig(gimp-2.0)
|
||||
BuildRequires: pkgconfig(gimp-3.0)
|
||||
%endif
|
||||
BuildRequires: (pkgconfig(glut) or pkgconfig(freeglut))
|
||||
## sjpeg examples are not built
|
||||
#BuildRequires: (pkgconfig(glut) or pkgconfig(freeglut))
|
||||
BuildRequires: gtest-devel
|
||||
BuildRequires: gflags-devel
|
||||
BuildRequires: gmock-devel
|
||||
BuildRequires: pkgconfig(libhwy)
|
||||
BuildRequires: pkgconfig(libbrotlicommon)
|
||||
BuildRequires: pkgconfig(lcms2)
|
||||
BuildRequires: pkgconfig(libjpeg)
|
||||
BuildRequires: pkgconfig(libpng)
|
||||
BuildRequires: pkgconfig(libwebp)
|
||||
## benchmark tools are not built
|
||||
#BuildRequires: pkgconfig(libwebp)
|
||||
BuildRequires: pkgconfig(OpenEXR)
|
||||
BuildRequires: pkgconfig(Qt5)
|
||||
BuildRequires: pkgconfig(Qt5X11Extras)
|
||||
## viewers are not built
|
||||
#BuildRequires: extra-cmake-modules
|
||||
#BuildRequires: pkgconfig(Qt5)
|
||||
#BuildRequires: pkgconfig(Qt5X11Extras)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
# epel 8 need this other already have it
|
||||
BuildRequires: python3-devel
|
||||
%if 0%{?new_soname}
|
||||
BuildRequires: libjxl < %{version}
|
||||
BuildRequires: libjxl < %{epoch}:%{version}
|
||||
%endif
|
||||
|
||||
# Header-only library to be directly included in the project's source tree
|
||||
Provides: bundled(lodepng) = 0-0.1.20210522git48e5364
|
||||
# No official release
|
||||
Provides: bundled(sjpeg) = 0-0.1.20210522git868ab55
|
||||
Provides: bundled(sjpeg) = 0-0.1.20230608gite5ab130
|
||||
# Build system is Bazel, which is not packaged by Fedora
|
||||
Provides: bundled(skcms) = 0-0.1.20210522git6437475
|
||||
Provides: bundled(skcms) = 0-0.1.20240122git51b7f2a
|
||||
|
||||
%description
|
||||
%common_description
|
||||
|
||||
%package -n libjxl-utils
|
||||
Summary: Utilities for manipulating JPEG XL images
|
||||
Recommends: jxl-pixbuf-loader = %{version}-%{release}
|
||||
Recommends: gimp-jxl-plugin = %{version}-%{release}
|
||||
Provides: jpegxl-utils = %{version}-%{release}
|
||||
Recommends: gimp-jxl-plugin = %{epoch}:%{version}-%{release}
|
||||
Provides: jpegxl-utils = %{epoch}:%{version}-%{release}
|
||||
Obsoletes: jpegxl-utils < 0.3.7-5
|
||||
|
||||
%description -n libjxl-utils
|
||||
%{common_description}
|
||||
|
||||
%package -n libjxl-devtools
|
||||
Summary: Development tools for JPEG-XL
|
||||
Requires: libjxl%{?_isa} = %{epoch}:%{version}-%{release}
|
||||
|
||||
%description -n libjxl-devtools
|
||||
%{common_description}
|
||||
|
||||
Development tools for JPEG-XL
|
||||
|
||||
%package doc
|
||||
Summary: Documentation for JPEG-XL
|
||||
BuildArch: noarch
|
||||
|
|
@ -99,9 +110,12 @@ Documentation for JPEG-XL.
|
|||
%package -n libjxl
|
||||
Summary: Library files for JPEG-XL
|
||||
Requires: shared-mime-info
|
||||
Recommends: jxl-pixbuf-loader = %{version}-%{release}
|
||||
Provides: jpegxl-libs = %{version}-%{release}
|
||||
Provides: jpegxl-libs = %{epoch}:%{version}-%{release}
|
||||
Obsoletes: jpegxl-libs < 0.3.7-5
|
||||
Obsoletes: jxl-pixbuf-loader < %{epoch}:%{version}-%{release}
|
||||
%if %{without gimp_plugin}
|
||||
Obsoletes: gimp-jxl-plugin < 1:0.10.3-4
|
||||
%endif
|
||||
|
||||
%description -n libjxl
|
||||
%{common_description}
|
||||
|
|
@ -110,8 +124,8 @@ Library files for JPEG-XL.
|
|||
|
||||
%package -n libjxl-devel
|
||||
Summary: Development files for JPEG-XL
|
||||
Requires: libjxl%{?_isa} = %{version}-%{release}
|
||||
Provides: jpegxl-devel = %{version}-%{release}
|
||||
Requires: libjxl%{?_isa} = %{epoch}:%{version}-%{release}
|
||||
Provides: jpegxl-devel = %{epoch}:%{version}-%{release}
|
||||
Obsoletes: jpegxl-devel < 0.3.7-5
|
||||
|
||||
%description -n libjxl-devel
|
||||
|
|
@ -119,14 +133,6 @@ Obsoletes: jpegxl-devel < 0.3.7-5
|
|||
|
||||
Development files for JPEG-XL.
|
||||
|
||||
%package -n jxl-pixbuf-loader
|
||||
Summary: JPEG-XL image loader for GTK+ applications
|
||||
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
|
||||
Requires: gdk-pixbuf2
|
||||
|
||||
%description -n jxl-pixbuf-loader
|
||||
Jxl-pixbuf-loader contains a plugin to load JPEG-XL images in GTK+ applications.
|
||||
|
||||
%if %{with gimp_plugin}
|
||||
%package -n gimp-jxl-plugin
|
||||
Summary: A plugin for loading and saving JPEG-XL images
|
||||
|
|
@ -138,39 +144,72 @@ This is a GIMP plugin for loading and saving JPEG-XL images.
|
|||
|
||||
%prep
|
||||
%autosetup -p1 -n libjxl-%{version}
|
||||
rm -rf third_party/
|
||||
%setup -q -T -D -a 1 -n libjxl-%{version}
|
||||
rm -rf testdata/ third_party/
|
||||
%setup -q -T -D -a 1 -a 2 -n libjxl-%{version}
|
||||
|
||||
%build
|
||||
export CC=clang CXX=clang++
|
||||
%cmake -DENABLE_CCACHE=1 \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DBUILD_TESTING=ON \
|
||||
-DINSTALL_GTEST:BOOL=OFF \
|
||||
-DJPEGXL_ENABLE_BENCHMARK:BOOL=OFF \
|
||||
-DJPEGXL_ENABLE_PLUGINS:BOOL=ON \
|
||||
-DJPEGXL_ENABLE_PLUGIN_GDKPIXBUF:BOOL=OFF \
|
||||
-DJPEGXL_FORCE_SYSTEM_BROTLI:BOOL=ON \
|
||||
-DJPEGXL_FORCE_SYSTEM_GTEST:BOOL=ON \
|
||||
-DJPEGXL_FORCE_SYSTEM_HWY:BOOL=ON \
|
||||
-DJPEGXL_WARNINGS_AS_ERRORS:BOOL=OFF \
|
||||
-DBUILD_SHARED_LIBS:BOOL=OFF
|
||||
-DBUILD_SHARED_LIBS:BOOL=ON \
|
||||
-DBUNDLE_LIBPNG_DEFAULT:BOOL=OFF \
|
||||
-DBUNDLE_GFLAGS_DEFAULT:BOOL=OFF \
|
||||
-DJPEGXL_ENABLE_DEVTOOLS=ON
|
||||
%cmake_build -- all doc
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
rm -v %{buildroot}%{_libdir}/*.a
|
||||
#rm -v %{buildroot}%{_libdir}/*.a
|
||||
|
||||
%if 0%{?new_soname}
|
||||
cp -p %{_libdir}/libjxl.so.%{sover_old}* \
|
||||
%{_libdir}/libjxl_threads.so.%{sover_old}* \
|
||||
%{_libdir}/libjxl_cms.so.%{sover_old}* \
|
||||
%{buildroot}%{_libdir}
|
||||
%endif
|
||||
|
||||
%check
|
||||
%ifarch s390x
|
||||
# https://github.com/libjxl/libjxl/issues/3629
|
||||
%ctest -E 'DecodeTest\.(ProgressionTestLosslessAlpha|FlushTestLosslessProgressiveAlpha)|EncodeTest\.FrameSettingsTest|JxlTest\.RoundtripAlpha(Resampling(OnlyAlpha)?|16)|JxlTest\.RoundtripProgressive(Level2Slow)?|ModularTest\.RoundtripLossy(DeltaPalette|16)?|RoundtripLossless/ModularTestParam\.RoundtripLossless/1bitSqueeze|RoundtripLossless/ModularTestParam\.RoundtripLossless/(1|2[01467]|30)bitSqueeze|PassesTest\.ProgressiveDownsample2DegradesCorrectly(Grayscale)?'
|
||||
%else
|
||||
%ctest
|
||||
%endif
|
||||
|
||||
%files -n libjxl-utils
|
||||
%doc CONTRIBUTING.md CONTRIBUTORS README.md
|
||||
%{_bindir}/cjxl
|
||||
%{_bindir}/djxl
|
||||
%{_bindir}/jxlinfo
|
||||
%{_mandir}/man1/cjxl.1*
|
||||
%{_mandir}/man1/djxl.1*
|
||||
|
||||
%files -n libjxl-devtools
|
||||
%{_bindir}/djxl_fuzzer_corpus
|
||||
%{_bindir}/butteraugli_main
|
||||
%{_bindir}/decode_and_encode
|
||||
%{_bindir}/display_to_hlg
|
||||
%{_bindir}/exr_to_pq
|
||||
%{_bindir}/icc_simplify
|
||||
%{_bindir}/pq_to_hlg
|
||||
%{_bindir}/render_hlg
|
||||
%{_bindir}/tone_map
|
||||
%{_bindir}/texture_to_cube
|
||||
%{_bindir}/generate_lut_template
|
||||
%{_bindir}/ssimulacra_main
|
||||
%{_bindir}/ssimulacra2
|
||||
%{_bindir}/xyb_range
|
||||
%{_bindir}/jxl_from_tree
|
||||
%{_bindir}/local_tone_map
|
||||
|
||||
%files doc
|
||||
%doc doc/*.md
|
||||
%doc %{_vpath_builddir}/html
|
||||
|
|
@ -180,12 +219,12 @@ cp -p %{_libdir}/libjxl.so.%{sover_old}* \
|
|||
%license LICENSE
|
||||
%{_libdir}/libjxl.so.%{sover}*
|
||||
%{_libdir}/libjxl_threads.so.%{sover}*
|
||||
%{_libdir}/libjxl_cms.so.%{sover}*
|
||||
%if 0%{?new_soname}
|
||||
%{_libdir}/libjxl.so.%{sover_old}*
|
||||
%{_libdir}/libjxl_threads.so.%{sover_old}*
|
||||
%{_libdir}/libjxl_cms.so.%{sover_old}*
|
||||
%endif
|
||||
%dir %{_datadir}/thumbnailers
|
||||
%{_datadir}/thumbnailers/jxl.thumbnailer
|
||||
%{_datadir}/mime/packages/image-jxl.xml
|
||||
|
||||
%files -n libjxl-devel
|
||||
|
|
@ -193,12 +232,11 @@ cp -p %{_libdir}/libjxl.so.%{sover_old}* \
|
|||
%{_includedir}/jxl/
|
||||
%{_libdir}/libjxl.so
|
||||
%{_libdir}/libjxl_threads.so
|
||||
%{_libdir}/libjxl_cms.so
|
||||
%{_libdir}/libjxl_extras_codec.a
|
||||
%{_libdir}/pkgconfig/libjxl.pc
|
||||
%{_libdir}/pkgconfig/libjxl_threads.pc
|
||||
|
||||
%files -n jxl-pixbuf-loader
|
||||
%license LICENSE
|
||||
%{_libdir}/gdk-pixbuf-2.0/*/loaders/libpixbufloader-jxl.so
|
||||
%{_libdir}/pkgconfig/libjxl_cms.pc
|
||||
|
||||
%if %{with gimp_plugin}
|
||||
%files -n gimp-jxl-plugin
|
||||
|
|
|
|||
5
sources
5
sources
|
|
@ -1,2 +1,3 @@
|
|||
SHA512 (jpegxl-0.6.1.tar.gz) = 302935d722160b0b288ac63301f9e95caf82eccf6ad76c4f4da6316a0314ee3562115932b1ceacb0d02708de0a07788992d3478cae73af0b90193f5769f9fb52
|
||||
SHA512 (third_party-0.6.1.tar.gz) = 7e416daf97e1cc54da00ec9b58636151308371d223fe29fcc22f6e9087852fd6fe9784a4e2f3e191a85a6f907a2732520ee7c8fd387292e19b5cc0b8a9d9392b
|
||||
SHA512 (jpegxl-0.11.1.tar.gz) = 0cfd81d9d3b783f96bd04f244d73ffbc12186c89993d46064a2751bef0a446a5e86be05add5c10f60d4482d39333d9bf3f9a866d6eb84f8fa0d4e8b5828fd74c
|
||||
SHA512 (testdata-0.11.1.tar.gz) = e775be0e8a56a828a4b70a174c841b3d474dbd170d899c50343896b21e46c6ae20f017f905ad7b83e097031e8add2788a00b1c452aa22e159b1f3a4e72a47155
|
||||
SHA512 (third_party-0.11.1.tar.gz) = 720544bd722cbc6ef81db660786e4b022f156d05672b7d7ee6110d367272dcf22a35458f51e0d850df2f6fb368978c43fa4fff99763010360a8b5673d2e556ca
|
||||
|
|
|
|||
20
update_third_party.sh
Executable file
20
update_third_party.sh
Executable file
|
|
@ -0,0 +1,20 @@
|
|||
VERSION=0.11.1
|
||||
|
||||
git clone https://github.com/libjxl/libjxl
|
||||
cd libjxl/
|
||||
git checkout .
|
||||
git checkout v${VERSION}
|
||||
./deps.sh
|
||||
rm -rvf third_party/brotli/
|
||||
rm -rvf third_party/googletest/
|
||||
rm -rvf third_party/HEVCSoftware/
|
||||
rm -rvf third_party/highway/
|
||||
rm -rvf third_party/lcms/
|
||||
rm -rvf third_party/libjpeg-turbo
|
||||
rm -rvf third_party/libpng/
|
||||
rm -rvf third_party/skcms/profiles/
|
||||
rm -rvf third_party/zlib
|
||||
tar -zcf ../third_party-${VERSION}.tar.gz third_party/
|
||||
tar -zcf ../testdata-${VERSION}.tar.gz testdata/
|
||||
cd ..
|
||||
rm -rf libjxl/
|
||||
Loading…
Add table
Add a link
Reference in a new issue