summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Novomesky <dnovomesky@gmail.com>2022-03-10 12:40:00 +0100
committerJoonas Niilola <juippis@gentoo.org>2022-03-24 14:46:39 +0200
commit71ecc8c1bbf99749fdbcc77e41efc8cd4bf34868 (patch)
tree50da62819233137b902df8774bffcfcb25926f74 /media-libs
parentdev-cpp/highway: new package, moved from ::guru (diff)
downloadgentoo-71ecc8c1bbf99749fdbcc77e41efc8cd4bf34868.tar.gz
gentoo-71ecc8c1bbf99749fdbcc77e41efc8cd4bf34868.tar.bz2
gentoo-71ecc8c1bbf99749fdbcc77e41efc8cd4bf34868.zip
media-libs/libjxl: new package, moved from ::guru
Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Daniel Novomesky <dnovomesky@gmail.com> Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/libjxl/Manifest1
-rw-r--r--media-libs/libjxl/libjxl-0.7.0_pre20220311.ebuild89
-rw-r--r--media-libs/libjxl/libjxl-9999.ebuild82
-rw-r--r--media-libs/libjxl/metadata.xml21
4 files changed, 193 insertions, 0 deletions
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>dnovomesky@gmail.com</email>
+ <name>Daniel Novomesky</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</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>