* [gentoo-commits] repo/proj/guru:master commit in: media-libs/libjxl/files/, media-libs/libjxl/
@ 2021-10-27 6:18 Florian Schmaus
0 siblings, 0 replies; 2+ messages in thread
From: Florian Schmaus @ 2021-10-27 6:18 UTC (permalink / raw
To: gentoo-commits
commit: 0518c6760f02e240b61d02cea7188585a8c7f6cc
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Tue Oct 26 16:34:38 2021 +0000
Commit: Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Tue Oct 26 16:35:07 2021 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=0518c676
media-libs/libjxl: add 0.6
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
media-libs/libjxl/Manifest | 1 +
.../libjxl/files/libjxl-0.6-system-libs.patch | 87 ++++++++++++++++++++++
media-libs/libjxl/libjxl-0.6.ebuild | 87 ++++++++++++++++++++++
media-libs/libjxl/metadata.xml | 11 +++
4 files changed, 186 insertions(+)
diff --git a/media-libs/libjxl/Manifest b/media-libs/libjxl/Manifest
new file mode 100644
index 000000000..63de49120
--- /dev/null
+++ b/media-libs/libjxl/Manifest
@@ -0,0 +1 @@
+DIST libjxl-0.6.tar.gz 16953410 BLAKE2B 8941987f6d31096a7286f9d98cdcc16e5fe338e6b3d966343f97fc5b5b932ec92c994fab5781448aa7d96324e5c9ce5c83754b01cf6e752d0702ce9fc0a2087f SHA512 934c86d079c7a1f5382fad158efac225b9d1b27e551ea85ea7ec43e7ffd5cba85ddbfa35658b242a9f9c9589decf245568349abfa8a4fe12898af78d51608852
diff --git a/media-libs/libjxl/files/libjxl-0.6-system-libs.patch b/media-libs/libjxl/files/libjxl-0.6-system-libs.patch
new file mode 100644
index 000000000..6aa776078
--- /dev/null
+++ b/media-libs/libjxl/files/libjxl-0.6-system-libs.patch
@@ -0,0 +1,87 @@
+diff '--color=auto' -ru /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/lib/jxl.cmake libjxl-0.6/lib/jxl.cmake
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/lib/jxl.cmake 2021-10-04 20:02:44.000000000 +0200
++++ libjxl-0.6/lib/jxl.cmake 2021-10-26 16:20:37.332839340 +0200
+@@ -387,17 +387,6 @@
+ target_link_libraries(jxl_enc-obj PUBLIC jxl_profiler)
+ endif()
+
+-#TODO(lode): don't depend on CMS for the core library
+-if (JPEGXL_ENABLE_SKCMS)
+- target_include_directories(jxl_enc-obj PRIVATE
+- $<TARGET_PROPERTY:skcms,INCLUDE_DIRECTORIES>
+- )
+-else ()
+- target_include_directories(jxl_enc-obj PRIVATE
+- $<TARGET_PROPERTY:lcms2,INCLUDE_DIRECTORIES>
+- )
+-endif ()
+-
+ # Headers for exporting/importing public headers
+ include(GenerateExportHeader)
+ set_target_properties(jxl_dec-obj PROPERTIES
+diff '--color=auto' -ru /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/plugins/gdk-pixbuf/CMakeLists.txt libjxl-0.6/plugins/gdk-pixbuf/CMakeLists.txt
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/plugins/gdk-pixbuf/CMakeLists.txt 2021-10-26 15:59:28.124828026 +0200
++++ libjxl-0.6/plugins/gdk-pixbuf/CMakeLists.txt 2021-10-26 16:24:08.540453940 +0200
+@@ -23,7 +23,7 @@
+
+ # Note: This only needs the decoder library, but we don't install the decoder
+ # shared library.
+-target_link_libraries(pixbufloader-jxl jxl jxl_threads skcms-interface PkgConfig::Gdk-Pixbuf)
++target_link_libraries(pixbufloader-jxl jxl jxl_threads skcms PkgConfig::Gdk-Pixbuf)
+
+ pkg_get_variable(GDK_PIXBUF_MODULEDIR gdk-pixbuf-2.0 gdk_pixbuf_moduledir)
+ install(TARGETS pixbufloader-jxl LIBRARY DESTINATION "${GDK_PIXBUF_MODULEDIR}")
+diff '--color=auto' -ru /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/third_party/CMakeLists.txt libjxl-0.6/third_party/CMakeLists.txt
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/third_party/CMakeLists.txt 2021-10-26 15:59:28.123828010 +0200
++++ libjxl-0.6/third_party/CMakeLists.txt 2021-10-26 16:13:51.758212796 +0200
+@@ -113,15 +113,6 @@
+ endif() # JPEGXL_DEP_LICENSE_DIR
+ endif()
+
+-# lodepng
+-if( NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/lodepng/lodepng.h" )
+- message(FATAL_ERROR "Please run ${PROJECT_SOURCE_DIR}/deps.sh to fetch the "
+- "build dependencies.")
+-endif()
+-include(lodepng.cmake)
+-configure_file("${CMAKE_CURRENT_SOURCE_DIR}/lodepng/LICENSE"
+- ${PROJECT_BINARY_DIR}/LICENSE.lodepng COPYONLY)
+-
+ # brotli
+ if (NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/brotli/c/include/brotli/decode.h" OR
+ JPEGXL_FORCE_SYSTEM_BROTLI)
+@@ -190,34 +181,3 @@
+ endforeach()
+ endif() # BROTLI_EMSCRIPTEN
+ endif()
+-
+-# *cms
+-if (JPEGXL_ENABLE_SKCMS OR JPEGXL_ENABLE_PLUGINS)
+- if( NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/skcms/skcms.h" )
+- message(FATAL_ERROR "Please run ${PROJECT_SOURCE_DIR}/deps.sh to fetch the "
+- "build dependencies.")
+- endif()
+- include(skcms.cmake)
+- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/skcms/LICENSE"
+- ${PROJECT_BINARY_DIR}/LICENSE.skcms COPYONLY)
+-endif ()
+-if (JPEGXL_ENABLE_VIEWERS OR NOT JPEGXL_ENABLE_SKCMS)
+- if( NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/lcms/.git" )
+- message(SEND_ERROR "Please run git submodule update --init")
+- endif()
+- include(lcms2.cmake)
+- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/lcms/COPYING"
+- ${PROJECT_BINARY_DIR}/LICENSE.lcms COPYONLY)
+-endif()
+-
+-# sjpeg
+-if (JPEGXL_ENABLE_SJPEG)
+- if (NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/sjpeg/CMakeLists.txt")
+- message(FATAL_ERROR "Please run ${PROJECT_SOURCE_DIR}/deps.sh to fetch the "
+- "build dependencies.")
+- endif()
+- include(sjpeg.cmake)
+- configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sjpeg/COPYING"
+- ${PROJECT_BINARY_DIR}/LICENSE.sjpeg COPYONLY)
+-endif ()
+-
diff --git a/media-libs/libjxl/libjxl-0.6.ebuild b/media-libs/libjxl/libjxl-0.6.ebuild
new file mode 100644
index 000000000..52c54ec86
--- /dev/null
+++ b/media-libs/libjxl/libjxl-0.6.ebuild
@@ -0,0 +1,87 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit xdg cmake
+
+DESCRIPTION="JPEG XL image format reference implementation"
+HOMEPAGE="https://github.com/libjxl/libjxl"
+SRC_URI="https://github.com/libjxl/libjxl/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="abi_x86_64 cpu_flags_arm_neon benchmark devtools examples man +openexr plugins profile +sjpeg +skcms tcmalloc tools viewers"
+
+RDEPEND="
+ app-arch/brotli
+ dev-cpp/highway:=
+ media-libs/libpng
+ media-libs/lodepng:=
+ media-libs/giflib
+ sys-libs/zlib
+ virtual/jpeg
+
+ !skcms? ( media-libs/lcms )
+ openexr? ( media-libs/openexr:= )
+ plugins? (
+ dev-libs/glib:2
+ media-gfx/gimp
+ media-libs/babl
+ media-libs/gegl
+ media-libs/skcms:=
+ x11-libs/gdk-pixbuf
+ x11-misc/shared-mime-info
+ )
+ sjpeg? ( media-libs/sjpeg:= )
+ skcms? ( media-libs/skcms:= )
+ tcmalloc? ( dev-util/google-perftools )
+ viewers? ( media-libs/lcms )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-cpp/gtest
+ plugins? ( x11-misc/xdg-utils )
+"
+BDEPEND="man? ( app-text/asciidoc )"
+
+PATCHES=( "${FILESDIR}/${P}-system-libs.patch" )
+REQUIRED_USE="tcmalloc? ( abi_x86_64 )"
+
+src_prepare() {
+ # remove bundled libs cmake
+ rm third_party/*.cmake || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DJPEGXL_ENABLE_BENCHMARK=$(usex benchmark)
+ -DJPEGXL_ENABLE_DEVTOOLS=$(usex devtools)
+ -DJPEGXL_ENABLE_EXAMPLES=$(usex examples)
+ -DJPEGXL_ENABLE_MANPAGES=$(usex man)
+ -DJPEGXL_ENABLE_OPENEXR=$(usex openexr)
+ -DJPEGXL_ENABLE_PLUGINS=$(usex plugins)
+ -DJPEGXL_ENABLE_PROFILER=$(usex profile)
+ -DJPEGXL_ENABLE_SJPEG=$(usex sjpeg)
+ -DJPEGXL_ENABLE_SKCMS=$(usex skcms)
+ -DJPEGXL_ENABLE_TCMALLOC=$(usex tcmalloc)
+ -DJPEGXL_ENABLE_TOOLS=$(usex tools)
+ -DJPEGXL_ENABLE_VIEWERS=$(usex viewers)
+ -DJPEGXL_FORCE_NEON=$(usex cpu_flags_arm_neon)
+
+ -DBUILD_SHARED_LIBS=ON
+ -DJPEGXL_BUNDLE_SKCMS=OFF
+ -DJPEGXL_ENABLE_COVERAGE=OFF
+ -DJPEGXL_ENABLE_FUZZERS=OFF
+ -DJPEGXL_ENABLE_TRANSCODE_JPEG=ON
+ -DJPEGXL_FORCE_SYSTEM_BROTLI=ON
+ -DJPEGXL_FORCE_SYSTEM_GTEST=ON
+ -DJPEGXL_FORCE_SYSTEM_HWY=ON
+ -DJPEGXL_STATIC=OFF
+ -DJPEGXL_WARNINGS_AS_ERRORS=OFF
+ )
+
+ cmake_src_configure
+}
diff --git a/media-libs/libjxl/metadata.xml b/media-libs/libjxl/metadata.xml
index d9a1e3c6e..ac9483923 100644
--- a/media-libs/libjxl/metadata.xml
+++ b/media-libs/libjxl/metadata.xml
@@ -5,4 +5,15 @@
<email>dnovomesky@gmail.com</email>
<name>Daniel Novomesky</name>
</maintainer>
+ <use>
+ <flag name="benchmark">Build JPEGXL benchmark tools</flag>
+ <flag name="devtools">Build JPEGXL developer tools</flag>
+ <flag name="openexr">Build JPEGXL with support for OpenEXR</flag>
+ <flag name="plugins">Build third-party plugins to support JPEG XL in other applications</flag>
+ <flag name="sjpeg">Build JPEGXL with support for encoding with sjpeg</flag>
+ <flag name="skcms">Build with skcms instead of lcms2</flag>
+ <flag name="tcmalloc">Build JPEGXL using gperftools (tcmalloc) allocator</flag>
+ <flag name="tools">Build JPEGXL user tools: cjxl and djxl</flag>
+ <flag name="viewers">Build JPEGXL viewer tools for evaluation</flag>
+ </use>
</pkgmetadata>
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: media-libs/libjxl/files/, media-libs/libjxl/
@ 2021-10-28 20:56 Haelwenn Monnier
0 siblings, 0 replies; 2+ messages in thread
From: Haelwenn Monnier @ 2021-10-28 20:56 UTC (permalink / raw
To: gentoo-commits
commit: 8bf10763574482ee29614a2b4c40c74e87cbcbf6
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Wed Oct 27 10:50:16 2021 +0000
Commit: Haelwenn Monnier <contact <AT> hacktivis <DOT> me>
CommitDate: Wed Oct 27 10:51:07 2021 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=8bf10763
media-libs/libjxl: install more stuff
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
.../libjxl/files/libjxl-0.6-system-libs.patch | 53 +++++++++++++++++++---
.../{libjxl-0.6.ebuild => libjxl-0.6-r1.ebuild} | 48 ++++++++++++++++----
2 files changed, 86 insertions(+), 15 deletions(-)
diff --git a/media-libs/libjxl/files/libjxl-0.6-system-libs.patch b/media-libs/libjxl/files/libjxl-0.6-system-libs.patch
index 8ca51d6f8..3a7aa9194 100644
--- a/media-libs/libjxl/files/libjxl-0.6-system-libs.patch
+++ b/media-libs/libjxl/files/libjxl-0.6-system-libs.patch
@@ -1,5 +1,5 @@
---- a/lib/jxl.cmake
-+++ b/lib/jxl.cmake
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/lib/jxl.cmake
++++ libjxl-0.6/lib/jxl.cmake
@@ -387,17 +387,6 @@
target_link_libraries(jxl_enc-obj PUBLIC jxl_profiler)
endif()
@@ -18,8 +18,24 @@
# Headers for exporting/importing public headers
include(GenerateExportHeader)
set_target_properties(jxl_dec-obj PROPERTIES
---- a/plugins/gdk-pixbuf/CMakeLists.txt
-+++ b/plugins/gdk-pixbuf/CMakeLists.txt
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/lib/jxl_extras.cmake
++++ libjxl-0.6/lib/jxl_extras.cmake
+@@ -92,7 +92,7 @@
+ endif ()
+
+ if (JPEGXL_ENABLE_OPENEXR)
+-pkg_check_modules(OpenEXR IMPORTED_TARGET OpenEXR)
++pkg_check_modules(OpenEXR IMPORTED_TARGET OpenEXR-3)
+ if (OpenEXR_FOUND)
+ target_sources(jxl_extras-static PRIVATE
+ extras/codec_exr.cc
+@@ -114,3 +114,4 @@
+ endif()
+ endif() # OpenEXR_FOUND
+ endif() # JPEGXL_ENABLE_OPENEXR
++
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/plugins/gdk-pixbuf/CMakeLists.txt
++++ libjxl-0.6/plugins/gdk-pixbuf/CMakeLists.txt
@@ -23,7 +23,7 @@
# Note: This only needs the decoder library, but we don't install the decoder
@@ -29,8 +45,8 @@
pkg_get_variable(GDK_PIXBUF_MODULEDIR gdk-pixbuf-2.0 gdk_pixbuf_moduledir)
install(TARGETS pixbufloader-jxl LIBRARY DESTINATION "${GDK_PIXBUF_MODULEDIR}")
---- a/third_party/CMakeLists.txt
-+++ b/third_party/CMakeLists.txt
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/third_party/CMakeLists.txt
++++ libjxl-0.6/third_party/CMakeLists.txt
@@ -113,15 +113,6 @@
endif() # JPEGXL_DEP_LICENSE_DIR
endif()
@@ -82,3 +98,28 @@
- ${PROJECT_BINARY_DIR}/LICENSE.sjpeg COPYONLY)
-endif ()
-
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/tools/comparison_viewer/CMakeLists.txt
++++ libjxl-0.6/tools/comparison_viewer/CMakeLists.txt
+@@ -24,9 +24,6 @@
+ image_loading.cc
+ image_loading.h
+ )
+-target_include_directories(image_loading PRIVATE
+- $<TARGET_PROPERTY:lcms2,INCLUDE_DIRECTORIES>
+-)
+ target_link_libraries(image_loading PUBLIC
+ Qt5::Widgets
+ jxl-static
+--- /var/tmp/portage/media-libs/libjxl-0.6/work/libjxl-0.6/tools/viewer/CMakeLists.txt
++++ libjxl-0.6/tools/viewer/CMakeLists.txt
+@@ -26,10 +26,6 @@
+ viewer_window.h
+ viewer_window.ui
+ )
+-target_include_directories(viewer PRIVATE
+- $<TARGET_PROPERTY:lcms2,INCLUDE_DIRECTORIES>
+- "${PROJECT_SOURCE_DIR}"
+-)
+ target_link_libraries(viewer
+ Qt5::Widgets
+ icc_detect
diff --git a/media-libs/libjxl/libjxl-0.6.ebuild b/media-libs/libjxl/libjxl-0.6-r1.ebuild
similarity index 68%
rename from media-libs/libjxl/libjxl-0.6.ebuild
rename to media-libs/libjxl/libjxl-0.6-r1.ebuild
index afd6ae0c0..d8cf76855 100644
--- a/media-libs/libjxl/libjxl-0.6.ebuild
+++ b/media-libs/libjxl/libjxl-0.6-r1.ebuild
@@ -1,9 +1,9 @@
# Copyright 2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=8
+EAPI=7
-inherit xdg cmake
+inherit xdg cmake java-pkg-opt-2
DESCRIPTION="JPEG XL image format reference implementation"
HOMEPAGE="https://github.com/libjxl/libjxl"
@@ -12,17 +12,21 @@ SRC_URI="https://github.com/libjxl/libjxl/archive/refs/tags/v${PV}.tar.gz -> ${P
KEYWORDS="~amd64"
LICENSE="Apache-2.0"
SLOT="0"
-IUSE="abi_x86_64 cpu_flags_arm_neon benchmark devtools examples man +openexr plugins profile +sjpeg +skcms tcmalloc tools viewers" #java
+IUSE="abi_x86_64 cpu_flags_arm_neon benchmark devtools examples java man +openexr plugins profile +sjpeg +skcms tcmalloc tools viewers" #emscripten
-RDEPEND="
+CDEPEND="
app-arch/brotli
dev-cpp/highway:=
media-libs/libpng
media-libs/lodepng:=
media-libs/giflib
sys-libs/zlib
- virtual/jpeg
+ benchmark? (
+ media-libs/libavif
+ media-libs/libwebp
+ virtual/jpeg
+ )
openexr? ( media-libs/openexr:= )
plugins? (
dev-libs/glib:2
@@ -37,17 +41,33 @@ RDEPEND="
!skcms? ( media-libs/lcms )
skcms? ( media-libs/skcms:= )
tcmalloc? ( dev-util/google-perftools )
- viewers? ( media-libs/lcms )
+ viewers? (
+ dev-qt/qtconcurrent
+ dev-qt/qtwidgets
+ dev-qt/qtx11extras
+ media-libs/lcms
+ x11-libs/libxcb
+ )
+"
+RDEPEND="
+ ${CDEPEND}
+ java? ( virtual/jre:1.8 )
"
DEPEND="
- ${RDEPEND}
+ ${CDEPEND}
dev-cpp/gtest
+ kde-frameworks/extra-cmake-modules
+ java? ( virtual/jdk:1.8 )
plugins? ( x11-misc/xdg-utils )
"
-BDEPEND="man? ( app-text/asciidoc )"
+BDEPEND="
+ virtual/pkgconfig
+ man? ( app-text/asciidoc )
+"
PATCHES=( "${FILESDIR}/${P}-system-libs.patch" )
REQUIRED_USE="tcmalloc? ( abi_x86_64 )"
+DOCS=( AUTHORS README.md SECURITY.md PATENTS CONTRIBUTORS CHANGELOG.md )
src_prepare() {
# remove bundled libs cmake
@@ -60,6 +80,7 @@ src_configure() {
-DJPEGXL_ENABLE_BENCHMARK=$(usex benchmark)
-DJPEGXL_ENABLE_DEVTOOLS=$(usex devtools)
-DJPEGXL_ENABLE_EXAMPLES=$(usex examples)
+ -DJPEGXL_ENABLE_JNI=$(usex java)
-DJPEGXL_ENABLE_MANPAGES=$(usex man)
-DJPEGXL_ENABLE_OPENEXR=$(usex openexr)
-DJPEGXL_ENABLE_PLUGINS=$(usex plugins)
@@ -88,6 +109,15 @@ src_configure() {
src_install() {
cmake_src_install
- find "${D}" -name '*.a' -delete || die
+ einstalldocs
#TODO: install documentation
+ pushd "${BUILD_DIR}/tools" || die
+ exeinto "/usr/libexe/${PN}"
+ doexe conformance/djxl_conformance tests/libjxl_test
+ use devtools && doexe box/box_list
+ use viewers && doexe comparison_viewer/compare_{codec,image}s flicker_test/flicker_test viewer/viewe
+ use benchmark && doexe benchmark_xl
+ insinto "/usr/share/${PN}"
+ use java && doins *.jar
+ find "${D}" -name '*.a' -delete || die
}
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-10-28 20:56 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-10-28 20:56 [gentoo-commits] repo/proj/guru:master commit in: media-libs/libjxl/files/, media-libs/libjxl/ Haelwenn Monnier
-- strict thread matches above, loose matches on Subject: below --
2021-10-27 6:18 Florian Schmaus
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox