commit:     71ecc8c1bbf99749fdbcc77e41efc8cd4bf34868
Author:     Daniel Novomesky <dnovomesky <AT> gmail <DOT> com>
AuthorDate: Thu Mar 10 11:40:00 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Thu Mar 24 12:46:39 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71ecc8c1

media-libs/libjxl: new package, moved from ::guru

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Daniel Novomesky <dnovomesky <AT> gmail.com>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 media-libs/libjxl/Manifest                        |  1 +
 media-libs/libjxl/libjxl-0.7.0_pre20220311.ebuild | 89 +++++++++++++++++++++++
 media-libs/libjxl/libjxl-9999.ebuild              | 82 +++++++++++++++++++++
 media-libs/libjxl/metadata.xml                    | 21 ++++++
 4 files changed, 193 insertions(+)

diff --git a/media-libs/libjxl/Manifest b/media-libs/libjxl/Manifest
new file mode 100644
index 000000000000..dff7d80ef035
--- /dev/null
+++ b/media-libs/libjxl/Manifest
@@ -0,0 +1 @@
+DIST libjxl-0.7.0_pre20220311.tar.gz 17322724 BLAKE2B 
a3cf970ea3db67e0890e94a5c74ea66610d4fed608fa3d079e6934a1d5f2bdc3ef4264c1df85e4b4efcd22c060087c712009f6c4a6b69a41f6e96ff3674c6de5
 SHA512 
f3e46ddea462b31de6df3c615c3cd628adc58c7ff41588e2ec4cc8929590c9272603a66ed4620b9ba550d85b3d1a6da3f51b1c4f8650ef8901347fea8af5d474

diff --git a/media-libs/libjxl/libjxl-0.7.0_pre20220311.ebuild 
b/media-libs/libjxl/libjxl-0.7.0_pre20220311.ebuild
new file mode 100644
index 000000000000..f55c42c90382
--- /dev/null
+++ b/media-libs/libjxl/libjxl-0.7.0_pre20220311.ebuild
@@ -0,0 +1,89 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_ECLASS=cmake
+inherit cmake-multilib xdg
+
+DESCRIPTION="JPEG XL image format reference implementation"
+HOMEPAGE="https://github.com/libjxl/libjxl";
+
+SRC_URI="https://api.github.com/repos/libjxl/libjxl/tarball/3f8e77fcfabe8ca8ddee6be4e662de525667c570
 -> ${P}.tar.gz"
+KEYWORDS="~amd64 ~x86"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="examples openexr"
+
+DEPEND="app-arch/brotli[${MULTILIB_USEDEP}]
+       dev-cpp/gflags[${MULTILIB_USEDEP}]
+       >=dev-cpp/highway-0.16.0[${MULTILIB_USEDEP}]
+       media-libs/giflib[${MULTILIB_USEDEP}]
+       media-libs/lcms[${MULTILIB_USEDEP}]
+       media-libs/libpng[${MULTILIB_USEDEP}]
+       openexr? ( media-libs/openexr:= )
+       sys-libs/zlib[${MULTILIB_USEDEP}]
+       virtual/jpeg[${MULTILIB_USEDEP}]
+       x11-misc/shared-mime-info
+"
+
+BDEPEND=""
+
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/libjxl-libjxl-3f8e77f
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               -DCMAKE_SKIP_RPATH=ON
+               -DBUILD_TESTING=OFF
+               -DJPEGXL_ENABLE_BENCHMARK=OFF
+               -DJPEGXL_ENABLE_COVERAGE=OFF
+               -DJPEGXL_ENABLE_FUZZERS=OFF
+               -DJPEGXL_ENABLE_SJPEG=OFF
+               -DJPEGXL_WARNINGS_AS_ERRORS=OFF
+
+               -DJPEGXL_ENABLE_SKCMS=OFF
+               -DJPEGXL_ENABLE_VIEWERS=OFF
+               -DJPEGXL_ENABLE_PLUGINS=OFF
+               -DJPEGXL_FORCE_SYSTEM_BROTLI=ON
+               -DJPEGXL_FORCE_SYSTEM_HWY=ON
+               -DJPEGXL_FORCE_SYSTEM_LCMS2=ON
+               -DJPEGXL_ENABLE_DOXYGEN=OFF
+               -DJPEGXL_ENABLE_MANPAGES=OFF
+               -DJPEGXL_ENABLE_JNI=OFF
+               -DJPEGXL_ENABLE_TCMALLOC=OFF
+       )
+
+       if multilib_is_native_abi; then
+               mycmakeargs+=(
+                       -DJPEGXL_ENABLE_TOOLS=ON
+                       -DJPEGXL_ENABLE_EXAMPLES=$(usex examples)
+                       -DJPEGXL_ENABLE_OPENEXR=$(usex openexr)
+               )
+       else
+               mycmakeargs+=(
+                       -DJPEGXL_ENABLE_TOOLS=OFF
+                       -DJPEGXL_ENABLE_EXAMPLES=OFF
+                       -DJPEGXL_ENABLE_OPENEXR=OFF
+               )
+       fi
+
+       cmake_src_configure
+}
+
+multilib_src_install() {
+       cmake_src_install
+
+       if multilib_is_native_abi; then
+               if use examples; then
+                       dobin "${BUILD_DIR}/jxlinfo"
+               fi
+
+               insinto /usr/share/mime/packages
+               doins -r "${S}"/plugins/mime/image-jxl.xml
+       fi
+
+       find "${D}" -name '*.a' -delete || die
+}

diff --git a/media-libs/libjxl/libjxl-9999.ebuild 
b/media-libs/libjxl/libjxl-9999.ebuild
new file mode 100644
index 000000000000..3bd059b1fd3d
--- /dev/null
+++ b/media-libs/libjxl/libjxl-9999.ebuild
@@ -0,0 +1,82 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_ECLASS=cmake
+inherit cmake-multilib git-r3 xdg
+
+DESCRIPTION="JPEG XL image format reference implementation"
+HOMEPAGE="https://github.com/libjxl/libjxl";
+
+EGIT_REPO_URI="https://github.com/libjxl/libjxl.git";
+EGIT_SUBMODULES=(third_party/skcms)
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="examples gdk-pixbuf gimp210 openexr"
+
+DEPEND="app-arch/brotli[${MULTILIB_USEDEP}]
+       dev-cpp/gflags[${MULTILIB_USEDEP}]
+       >=dev-cpp/highway-0.16.0[${MULTILIB_USEDEP}]
+       media-libs/giflib[${MULTILIB_USEDEP}]
+       media-libs/libpng[${MULTILIB_USEDEP}]
+       openexr? ( media-libs/openexr:= )
+       sys-libs/zlib[${MULTILIB_USEDEP}]
+       virtual/jpeg[${MULTILIB_USEDEP}]
+       x11-misc/shared-mime-info
+       gdk-pixbuf? ( x11-libs/gdk-pixbuf:2 )
+       gimp210? ( >=media-gfx/gimp-2.10.28:0/2 )
+"
+
+BDEPEND=""
+
+RDEPEND="${DEPEND}"
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               -DCMAKE_SKIP_RPATH=ON
+               -DBUILD_TESTING=OFF
+               -DJPEGXL_ENABLE_BENCHMARK=OFF
+               -DJPEGXL_ENABLE_COVERAGE=OFF
+               -DJPEGXL_ENABLE_FUZZERS=OFF
+               -DJPEGXL_ENABLE_SJPEG=OFF
+               -DJPEGXL_WARNINGS_AS_ERRORS=OFF
+
+               -DJPEGXL_ENABLE_SKCMS=ON
+               -DJPEGXL_ENABLE_VIEWERS=OFF
+               -DJPEGXL_FORCE_SYSTEM_BROTLI=ON
+               -DJPEGXL_FORCE_SYSTEM_HWY=ON
+               -DJPEGXL_ENABLE_DOXYGEN=OFF
+               -DJPEGXL_ENABLE_MANPAGES=OFF
+               -DJPEGXL_ENABLE_JNI=OFF
+               -DJPEGXL_ENABLE_TCMALLOC=OFF
+       )
+
+       if multilib_is_native_abi; then
+               mycmakeargs+=(
+                       -DJPEGXL_ENABLE_TOOLS=ON
+                       -DJPEGXL_ENABLE_EXAMPLES=$(usex examples)
+                       -DJPEGXL_ENABLE_OPENEXR=$(usex openexr)
+                       -DJPEGXL_ENABLE_PLUGINS=ON
+                       -DJPEGXL_ENABLE_PLUGIN_GDKPIXBUF=$(usex gdk-pixbuf)
+                       -DJPEGXL_ENABLE_PLUGIN_GIMP210=$(usex gimp210)
+               )
+       else
+               mycmakeargs+=(
+                       -DJPEGXL_ENABLE_TOOLS=OFF
+                       -DJPEGXL_ENABLE_EXAMPLES=OFF
+                       -DJPEGXL_ENABLE_OPENEXR=OFF
+                       -DJPEGXL_ENABLE_PLUGINS=OFF
+               )
+       fi
+
+       cmake_src_configure
+}
+
+multilib_src_install() {
+       cmake_src_install
+       if use examples && multilib_is_native_abi; then
+               dobin "${BUILD_DIR}/jxlinfo"
+       fi
+}

diff --git a/media-libs/libjxl/metadata.xml b/media-libs/libjxl/metadata.xml
new file mode 100644
index 000000000000..fe211671a1a3
--- /dev/null
+++ b/media-libs/libjxl/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+  <maintainer type="person" proxied="yes">
+    <email>[email protected]</email>
+    <name>Daniel Novomesky</name>
+  </maintainer>
+  <maintainer type="project" proxied="proxy">
+    <email>[email protected]</email>
+    <name>Proxy Maintainers</name>
+  </maintainer>
+  <longdescription>
+    JPEG XL reference implementation
+    (encoder and decoder), called libjxl.
+    Contains command line utilities: cjxl, djxl, jxlinfo.
+  </longdescription>
+  <use>
+    <flag name="gdk-pixbuf">Build a gdk-pixbuf loader</flag>
+    <flag name="gimp210">Enable plugin for GIMP 2.10.x series</flag>
+  </use>
+</pkgmetadata>

Reply via email to