summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/lcms')
-rw-r--r--media-libs/lcms/Manifest4
-rw-r--r--media-libs/lcms/files/lcms-2.13.1-clang-15-configure.patch29
-rw-r--r--media-libs/lcms/files/lcms-2.13.1-fix-configure-bashisms.patch22
-rw-r--r--media-libs/lcms/files/lcms-2.15-meson-big-endian.patch21
-rw-r--r--media-libs/lcms/files/lcms-2.15-meson-psicc-man-page.patch15
-rw-r--r--media-libs/lcms/files/lcms-2.15-meson-samples.patch26
-rw-r--r--media-libs/lcms/files/lcms-2.15-pthread-linking.patch25
-rw-r--r--media-libs/lcms/lcms-2.13.1-r1.ebuild58
-rw-r--r--media-libs/lcms/lcms-2.13.1.ebuild57
-rw-r--r--media-libs/lcms/lcms-2.14-r2.ebuild52
-rw-r--r--media-libs/lcms/lcms-2.15.ebuild53
-rw-r--r--media-libs/lcms/lcms-2.16.ebuild46
12 files changed, 188 insertions, 220 deletions
diff --git a/media-libs/lcms/Manifest b/media-libs/lcms/Manifest
index 2b0cd869338b..60d253d2191a 100644
--- a/media-libs/lcms/Manifest
+++ b/media-libs/lcms/Manifest
@@ -1,2 +1,2 @@
-DIST lcms2-2.13.1.tar.gz 7276499 BLAKE2B ff4815fc4bcea94dc942f8072741c592f1bbde9c8e997f4e21e36cd271062a341ecc9b1f3c56e3e36ec19091fec049ee9faf75df04c2bc1e11174dc4cfe8da9e SHA512 214ec63fa086b580a6507d493a54ccf5faf02c40e149d71e41f9fc8510efdb16554621c96d91cc886f09682c9631b10aa194b4b67eb6ffcc871d5d4666b05617
-DIST lcms2-2.14.tar.gz 7406694 BLAKE2B 777b0bf65829121a3d32bca1ab936ac022f9af739bccdd02d5f86688c3386b974f526a012bdec4d36649566eea0aa659db317dd383eede6488236d601156a0f9 SHA512 92fba0a457ea81590eba0b8d98b7b621da6a83e3857948585e0b524235954954f9ac1670cf6a19b457c0fce22a87899ea4c5810db1ff2acf7c6b6e0dc4b61a1b
+DIST lcms2-2.15.tar.gz 7548405 BLAKE2B 97ce1e87c8de17e7d0dd1b00e1b49cf4e3c6912c74ff16d5afb9979565ad830fd8b3f08f7535ae8b5e763fbd22d2a058c577536ddb7487b7aa8fb25d585f8c84 SHA512 ab038c369e66736e0dd3810fbac6cf5381bc3102c4dd693819367b1224f59d9e853ede081388464c0e7c213d92e6cddc48c23020953af10ad6c6802cfa17e213
+DIST lcms2-2.16.tar.gz 7632822 BLAKE2B cf4d10908e6b8e6cf15ec8a99f0a299a9bcb7082f0df5ab1c9d84fcb739132855edf717c2ab746040fc09bace7afaaa8a39538e7ceabd0e68cdb3b4fb5627c6d SHA512 638dd6ad6787456c8145510d18b2d0727bd0a446a13ac2934aabc9531d1156eca2a2c0fd780a453823fbd35a1895f9d8de5dc4b3cab505459dd3f0535b4e837d
diff --git a/media-libs/lcms/files/lcms-2.13.1-clang-15-configure.patch b/media-libs/lcms/files/lcms-2.13.1-clang-15-configure.patch
deleted file mode 100644
index e723d1f4b3c7..000000000000
--- a/media-libs/lcms/files/lcms-2.13.1-clang-15-configure.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-https://github.com/mm2/Little-CMS/pull/338
-
-From 61493b49b91740a84dea61b72a8ce7dc40afa766 Mon Sep 17 00:00:00 2001
-From: Sam James <sam@gentoo.org>
-Date: Mon, 12 Sep 2022 17:56:31 +0100
-Subject: [PATCH] configure.ac: fix configure tests broken with Clang 15
- (-Wimplicit-int)
-
-Clang 15 makes -Wimplicit-int an error by default.
-
-Before this fix, configure would think SSE2 support is not present
-when it is:
-```
-checking whether compiler supports SSE2... no
-```
-
-Signed-off-by: Sam James <sam@gentoo.org>
---- a/configure.ac
-+++ b/configure.ac
-@@ -212,7 +212,7 @@ AC_LANG_PUSH([C])
- AC_MSG_CHECKING([whether compiler supports SSE2])
- AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
- #include <emmintrin.h>
-- main() { __m128i n = _mm_set1_epi8(42); }]])],
-+ int main() { __m128i n = _mm_set1_epi8(42); }]])],
- [ac_compiler_supports_sse2=yes], [ac_compiler_supports_sse2=no])
- AC_MSG_RESULT([$ac_compiler_supports_sse2])
- AS_IF([test "x$ac_compiler_supports_sse2" != "xyes"],
-
diff --git a/media-libs/lcms/files/lcms-2.13.1-fix-configure-bashisms.patch b/media-libs/lcms/files/lcms-2.13.1-fix-configure-bashisms.patch
deleted file mode 100644
index 41e12fdf1f4e..000000000000
--- a/media-libs/lcms/files/lcms-2.13.1-fix-configure-bashisms.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://bugs.gentoo.org/832733
---- a/configure.ac
-+++ b/configure.ac
-@@ -55,7 +55,7 @@
- AC_PROG_LIBTOOL
- AC_SUBST(LIBTOOL_DEPS)
-
--LIB_PLUGINS = ''
-+LIB_PLUGINS=''
-
- # Add configure option --enable-maintainer-mode which enables dependency
- # checking and generation useful to package maintainers. This is made an
-@@ -149,7 +149,7 @@
- [
- with_fastfloat='no'
- ])
--if test "$with_fastfloat" == "yes"
-+if test "$with_fastfloat" = "yes"
- then
- LIB_PLUGINS="$LIB_PLUGINS -llcms2_fast_float"
- fi
-
diff --git a/media-libs/lcms/files/lcms-2.15-meson-big-endian.patch b/media-libs/lcms/files/lcms-2.15-meson-big-endian.patch
new file mode 100644
index 000000000000..a40690862d6b
--- /dev/null
+++ b/media-libs/lcms/files/lcms-2.15-meson-big-endian.patch
@@ -0,0 +1,21 @@
+https://github.com/mm2/Little-CMS/pull/360
+
+From 4e55c55802e4aee5f65be120291f5f4785483d98 Mon Sep 17 00:00:00 2001
+From: psykose <alice@ayaya.dev>
+Date: Thu, 2 Mar 2023 02:22:01 +0000
+Subject: [PATCH] meson: fix big endian cargs
+
+otherwise they are a string and appending with + [""]
+later fails in
+plugins/fast_float/testbed/meson.build:5:0: ERROR: The `+` operator of str does not accept objects of type list (['-DPROFILES_DIR="/home/buildozer/aports/main/lcms2/src/lcms2-2.15/plugins/test_profiles/"'])
+--- a/meson.build
++++ b/meson.build
+@@ -27,7 +27,7 @@ if cc.has_function_attribute('visibility:hidden')
+ endif
+
+ if host_machine.endian() == 'big'
+- cargs = '-DWORDS_BIGENDIAN=1'
++ cargs += '-DWORDS_BIGENDIAN=1'
+ endif
+
+
diff --git a/media-libs/lcms/files/lcms-2.15-meson-psicc-man-page.patch b/media-libs/lcms/files/lcms-2.15-meson-psicc-man-page.patch
new file mode 100644
index 000000000000..665f53d8a594
--- /dev/null
+++ b/media-libs/lcms/files/lcms-2.15-meson-psicc-man-page.patch
@@ -0,0 +1,15 @@
+https://github.com/mm2/Little-CMS/pull/361
+
+From a88767e99bc1b856946229796faf780ec2d5cbef Mon Sep 17 00:00:00 2001
+From: Biswapriyo Nath <nathbappai@gmail.com>
+Date: Thu, 2 Mar 2023 15:16:45 +0530
+Subject: [PATCH] meson: Install psicc man page
+
+--- a/utils/psicc/meson.build
++++ b/utils/psicc/meson.build
+@@ -12,3 +12,5 @@ psicc_exe = executable(
+ psicc_man = files(
+ 'psicc.1',
+ )
++
++install_man(psicc_man)
diff --git a/media-libs/lcms/files/lcms-2.15-meson-samples.patch b/media-libs/lcms/files/lcms-2.15-meson-samples.patch
new file mode 100644
index 000000000000..0b451c3922ef
--- /dev/null
+++ b/media-libs/lcms/files/lcms-2.15-meson-samples.patch
@@ -0,0 +1,26 @@
+https://github.com/mm2/Little-CMS/pull/362
+
+From 8849dd87ae44216b56c48db2b441f3906e085596 Mon Sep 17 00:00:00 2001
+From: Richard Hughes <richard@hughsie.com>
+Date: Thu, 2 Mar 2023 11:54:46 +0000
+Subject: [PATCH] Fix compiling the samples using meson
+
+--- a/utils/samples/meson.build
++++ b/utils/samples/meson.build
+@@ -5,7 +5,7 @@ wtpt_srcs = files(
+ wtpt_exe = executable(
+ 'wtpt',
+ wtpt_srcs,
+- dependencies: [liblcms2_dep, common_dep],
++ dependencies: [liblcms2_dep, common_dep, m_dep],
+ )
+
+ wtpt_man = files(
+@@ -28,6 +28,6 @@ foreach exe, srcs : examples
+ executable(
+ exe,
+ srcs,
+- dependencies: [liblcms2_dep],
++ dependencies: [liblcms2_dep, m_dep],
+ )
+ endforeach
diff --git a/media-libs/lcms/files/lcms-2.15-pthread-linking.patch b/media-libs/lcms/files/lcms-2.15-pthread-linking.patch
new file mode 100644
index 000000000000..613d43415b3d
--- /dev/null
+++ b/media-libs/lcms/files/lcms-2.15-pthread-linking.patch
@@ -0,0 +1,25 @@
+https://github.com/mm2/Little-CMS/commit/1cb1e12fc298b86168ff5606d4ae8d5adb478021
+
+From 1cb1e12fc298b86168ff5606d4ae8d5adb478021 Mon Sep 17 00:00:00 2001
+From: Daniel Engberg <daniel.engberg.lists@pyret.net>
+Date: Sun, 19 Mar 2023 13:19:14 +0100
+Subject: [PATCH] meson: Link pthread library to threaded plugin
+
+Fixes
+```
+cc -o plugins/threaded/src/liblcms2_threaded.so plugins/threaded/src/liblcms2_threaded.so.p/threaded_core.c.o plugins/threaded/src/liblcms2_threaded.so.p/threaded_main.c.o plugins/threaded/src/liblcms2_threaded.so.p/threaded_scheduler.c.o plugins/threaded/src/liblcms2_threaded.so.p/threaded_split.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -shared -fPIC -Wl,--start-group -Wl,-soname,liblcms2_threaded.so -fstack-protector-strong -O2 -pipe -fstack-protector-strong -fno-strict-aliasing '-Wl,-rpath,$ORIGIN/../../../src' -Wl,-rpath-link,/usr/ports/graphics/lcms2/work/lcms2-2.15/_build/src src/liblcms2.so.2.0.15 -Wl,--end-group
+ld: error: undefined symbol: pthread_create
+```
+OS: FreeBSD 13.2-BETA1 (amd64)
+--- a/plugins/threaded/src/meson.build
++++ b/plugins/threaded/src/meson.build
+@@ -21,7 +21,7 @@ liblcms2_threaded = library(
+ 'lcms2_threaded',
+ liblcms2_threaded_sources,
+ include_directories: lcms2_threaded_incdir,
+- dependencies: liblcms2_dep,
++ dependencies: [ liblcms2_dep, threads_dep ],
+ c_args: cargs,
+ install: true,
+ )
+
diff --git a/media-libs/lcms/lcms-2.13.1-r1.ebuild b/media-libs/lcms/lcms-2.13.1-r1.ebuild
deleted file mode 100644
index 2483f514e52d..000000000000
--- a/media-libs/lcms/lcms-2.13.1-r1.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools multilib-minimal
-
-DESCRIPTION="A lightweight, speed optimized color management engine"
-HOMEPAGE="http://www.littlecms.com/"
-SRC_URI="https://github.com/mm2/Little-CMS/releases/download/lcms${PV}/${PN}2-${PV}.tar.gz"
-S="${WORKDIR}/lcms2-${PV}"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc jpeg static-libs test +threads tiff zlib"
-REQUIRED_USE="tiff? ( zlib )"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
- tiff? ( >=media-libs/tiff-4.0.3-r6:=[${MULTILIB_USEDEP}] )
- zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.13.1-fix-configure-bashisms.patch
- "${FILESDIR}"/${PN}-2.13.1-clang-15-configure.patch
-)
-
-src_prepare() {
- default
-
- # TODO: Swap back to elibtoolize once dropped eautoreconf (for bashism patch)
- # for Prefix/Solaris
- #elibtoolize
- eautoreconf
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- $(use_with jpeg)
- $(use_enable static-libs static)
- $(use_with threads)
- $(use_with tiff)
- $(use_with zlib)
- )
-
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install_all() {
- find "${ED}" -type f -name "*.la" -delete || die
-
- use doc && dodoc doc/*.pdf
-}
diff --git a/media-libs/lcms/lcms-2.13.1.ebuild b/media-libs/lcms/lcms-2.13.1.ebuild
deleted file mode 100644
index 4da7f13161ca..000000000000
--- a/media-libs/lcms/lcms-2.13.1.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools multilib-minimal
-
-DESCRIPTION="A lightweight, speed optimized color management engine"
-HOMEPAGE="http://www.littlecms.com/"
-SRC_URI="https://github.com/mm2/Little-CMS/releases/download/lcms${PV}/${PN}2-${PV}.tar.gz"
-S="${WORKDIR}/lcms2-${PV}"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc jpeg static-libs test +threads tiff zlib"
-REQUIRED_USE="tiff? ( zlib )"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- jpeg? ( >=virtual/jpeg-0-r2:0[${MULTILIB_USEDEP}] )
- tiff? ( >=media-libs/tiff-4.0.3-r6:0=[${MULTILIB_USEDEP}] )
- zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.13.1-fix-configure-bashisms.patch
-)
-
-src_prepare() {
- default
-
- # TODO: Swap back to elibtoolize once dropped eautoreconf (for bashism patch)
- # for Prefix/Solaris
- #elibtoolize
- eautoreconf
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- $(use_with jpeg)
- $(use_enable static-libs static)
- $(use_with threads)
- $(use_with tiff)
- $(use_with zlib)
- )
-
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install_all() {
- find "${ED}" -type f -name "*.la" -delete || die
-
- use doc && dodoc doc/*.pdf
-}
diff --git a/media-libs/lcms/lcms-2.14-r2.ebuild b/media-libs/lcms/lcms-2.14-r2.ebuild
deleted file mode 100644
index 3260cab550d5..000000000000
--- a/media-libs/lcms/lcms-2.14-r2.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools multilib-minimal
-
-DESCRIPTION="A lightweight, speed optimized color management engine"
-HOMEPAGE="http://www.littlecms.com/"
-SRC_URI="https://github.com/mm2/Little-CMS/releases/download/lcms${PV}/${PN}2-${PV}.tar.gz"
-S="${WORKDIR}/lcms2-${PV}"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc jpeg static-libs tiff zlib"
-REQUIRED_USE="tiff? ( zlib )"
-
-RDEPEND="
- jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
- tiff? ( >=media-libs/tiff-4.0.3-r6:=[${MULTILIB_USEDEP}] )
- zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}"
-
-src_prepare() {
- default
-
- # TODO: switch back to elibtoolize once https://github.com/mm2/Little-CMS/issues/339
- # is fixed.
- # for Prefix/Solaris
- #elibtoolize
- eautoreconf
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- --with-threads
- $(use_with jpeg)
- $(use_enable static-libs static)
- $(use_with tiff)
- $(use_with zlib)
- )
-
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install_all() {
- find "${ED}" -type f -name "*.la" -delete || die
-
- use doc && dodoc doc/*.pdf
-}
diff --git a/media-libs/lcms/lcms-2.15.ebuild b/media-libs/lcms/lcms-2.15.ebuild
new file mode 100644
index 000000000000..65feb7b4f807
--- /dev/null
+++ b/media-libs/lcms/lcms-2.15.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib
+
+DESCRIPTION="A lightweight, speed optimized color management engine"
+HOMEPAGE="https://www.littlecms.com/"
+SRC_URI="https://github.com/mm2/Little-CMS/releases/download/lcms${PV/_}/${PN}2-${PV/_}.tar.gz"
+S="${WORKDIR}/lcms2-${PV/_}"
+
+# GPL-3 for the threaded & fastfloat plugins, see meson_options.txt
+LICENSE="GPL-3 MIT"
+SLOT="2"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="doc jpeg static-libs tiff"
+
+RDEPEND="
+ jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
+ tiff? ( >=media-libs/tiff-4.0.3-r6:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.15-meson-big-endian.patch
+ "${FILESDIR}"/${PN}-2.15-meson-samples.patch
+ "${FILESDIR}"/${PN}-2.15-meson-psicc-man-page.patch
+ "${FILESDIR}"/${PN}-2.15-pthread-linking.patch
+)
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+ -Dthreaded=true
+ -Dfastfloat=true
+ $(meson_feature jpeg)
+ $(meson_feature tiff)
+ )
+
+ meson_src_configure
+}
+
+multilib_src_test() {
+ # fast_float_testbed on hppa -> 1458s from default timeout of 600, #913067
+ meson_src_test --timeout-multiplier=3
+}
+
+multilib_src_install_all() {
+ use doc && dodoc doc/*.pdf
+}
diff --git a/media-libs/lcms/lcms-2.16.ebuild b/media-libs/lcms/lcms-2.16.ebuild
new file mode 100644
index 000000000000..331ce2f8c446
--- /dev/null
+++ b/media-libs/lcms/lcms-2.16.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib
+
+DESCRIPTION="A lightweight, speed optimized color management engine"
+HOMEPAGE="https://www.littlecms.com/"
+SRC_URI="https://github.com/mm2/Little-CMS/releases/download/lcms${PV/_}/${PN}2-${PV/_}.tar.gz"
+S="${WORKDIR}/lcms2-${PV/_}"
+
+# GPL-3 for the threaded & fastfloat plugins, see meson_options.txt
+LICENSE="GPL-3 MIT"
+SLOT="2"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="doc jpeg static-libs tiff"
+
+RDEPEND="
+ jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
+ tiff? ( >=media-libs/tiff-4.0.3-r6:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+ -Dthreaded=true
+ -Dfastfloat=true
+ $(meson_feature jpeg)
+ $(meson_feature tiff)
+ )
+
+ meson_src_configure
+}
+
+multilib_src_test() {
+ # fast_float_testbed on hppa -> 1458s from default timeout of 600, #913067
+ meson_src_test --timeout-multiplier=3
+}
+
+multilib_src_install_all() {
+ use doc && dodoc doc/*.pdf
+}