summaryrefslogtreecommitdiff
path: root/media-libs/icclib
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/icclib')
-rw-r--r--media-libs/icclib/Manifest8
-rw-r--r--media-libs/icclib/files/icclib-2.14-c23.patch38
-rw-r--r--media-libs/icclib/files/icclib-2.14-make.patch114
-rw-r--r--media-libs/icclib/files/meson-3.2.0.build59
-rw-r--r--media-libs/icclib/files/meson.build51
-rw-r--r--media-libs/icclib/icclib-2.14-r1.ebuild (renamed from media-libs/icclib/icclib-2.14.ebuild)34
-rw-r--r--media-libs/icclib/icclib-3.2.0.ebuild36
7 files changed, 208 insertions, 132 deletions
diff --git a/media-libs/icclib/Manifest b/media-libs/icclib/Manifest
index 7a9be34fe4ad..aaa3e4c1c2c0 100644
--- a/media-libs/icclib/Manifest
+++ b/media-libs/icclib/Manifest
@@ -1,5 +1,9 @@
+AUX icclib-2.14-c23.patch 974 BLAKE2B 152db502c4de712d553e350a4c9b0441618a71c3e6d7ad40a63e6787a16bf6e6f5976d5e48481ffcc0d556c3c5b5fbf7c6e85b723ee955b8d0261abbf79dff03 SHA512 cb25d2256e1a365d0b38c4f207ebfaada44b3b24fafae50187f88c670a0cbcab2629939f1a95653462257ad2b9a14d24b2da6a65f12c42656c9ca0a81db77481
AUX icclib-2.14-fno-common.patch 637 BLAKE2B e5eee3f4fa04bcf3199f2ccf6601ce02c78573f9f7e93b52cd64ff779b9a9e1345d6f28528ab20d89c7065a3fae951c73c079125552d3c48d2eb328bbc28d648 SHA512 7a86dc56ab0065fec4f26071aae9bc5bca81a5506dbde367ca9e2ef1b21f8ff3280a58a20abd49701092fae8144b474afc9e68886ba1607b7a44e3b7a16f27f1
-AUX icclib-2.14-make.patch 3074 BLAKE2B 9f45af8c8c0041525e98352b9aa4b2743607d76b79dee02b17cf67e3410f9d45caf433f7e6490bb761c2b19616acf19275356f21a9b9a582f3f30a0e15997e70 SHA512 e2245b6f7aa24fcb135e8ce7a4332b6a689822c6429cf48cab5cd61285e80c72ff50adb6d8e691b948e45b9dd5d3df42935b810e1a25aba4f2d9d51ac9b9a1eb
+AUX meson-3.2.0.build 1032 BLAKE2B 78e274bfd4b3cb65c2419d9673231da13ecd7afc428b916b361212f239cf933e2b5a10ca131b9fab5327ef17b6476264a9807334f4eb4d8beb82dc893c1005b3 SHA512 07330bde4357136cc17a7d72c4d2f666a07fd8373946aa68f539e3aeb7bdbcca30245d5c350b3670ad6e0f40ccc453e98c8501630630ff803cdce4e7a85760b8
+AUX meson.build 897 BLAKE2B 2a5112877880f1fe6c2c036e52e547869274a8e5c4f98bdfce21c9fd4d753b6526d3a481128ef2c3bcae9d1d7511ee7f219eddc101539a7c7582142eccc25170 SHA512 199a2fde0cc07946647caa98f129a07d82fa80fea525598be7ebbb697cd1e415bdfa42227c6d8b1cc10df7573e604837e19254ce17e66413ad2acce8d7d7d42a
+DIST ICCLib_V3.2.0.zip 316666 BLAKE2B 4fe46ca8a70044cf39fa18c3db7cb2a0352e337de30d792dbf487dab5dfa888e3bb7d2fc61abaf5809f47c874020d5cf7316299ea8ca9392b15768b7c218e607 SHA512 8a0e4c3b026ea6d8c0bb41d3002e583801ee83f0d2ed9e72499dc706bda70e6a1a23b27e6ee39f4c03c89578df2a87cd2230948d986ad0cab040a33394c3a916
DIST icclib_V2.14.zip 158606 BLAKE2B a42a16a00d540f3e0036f86a4934ed8ac3c67bfea135df5fc893cef939b451f0298c576aa4067360597912fff1afe3315588af64e4edc9605ea5944ff9e42cf6 SHA512 ed038c8655968c794491f30c295ef115900bfcc2e8bfd8607f12f73d6f2236fc339c1ed53a364524478273097ab9065a372bb26f38231bfc6dc02773a11546a3
-EBUILD icclib-2.14.ebuild 856 BLAKE2B c10a16b2924dfcfe6ad975398ddc54e6dd27977862512e610ed5826cbb04610ed84245244fe57986882a67f0cf21e6d3bfe262ee7d2cbb9536dc4263a9d89a2e SHA512 056c460bfa8f97bd0cf5d0b4f5929c20182d474786137a9bedc74d58550013a45f7c2d7ee05feb6b78b2a7718c7c729d85a39337e4dd026c5ae0e037320d46be
+EBUILD icclib-2.14-r1.ebuild 853 BLAKE2B 6753afdf79b7c1eaf6a41d36540c73109590c173a0554eb27ab8824d43edb8b842afe8bb8462db14fc080dfa1947acfa3b83bca5192011f2d871114f613545fa SHA512 c3480b906ca3dbfd155caf3e93c4852f0e8dae45042510e3c2bd87ed9f321f583d564702ae3c6b6c9e34d8db1e1adfaccc855bd330c558ea643e78efb665bee4
+EBUILD icclib-3.2.0.ebuild 710 BLAKE2B 094343354d5596b238722c620a0c0acee6fbf42d9f3cbac705f81eb552c7a57c98e0d7a58e485f6cf6dcba3550bf4d0114a06d47044b83b33edd166b723823ee SHA512 0ea325463e3e45a44011506cd1d151b55370c71e4d24abd95d18db59406cd22ec43a435a6eff5f5a3a45c65d0f0c9427b65c5ac2fd1035ec96a73932bf83d54d
MISC metadata.xml 260 BLAKE2B ef27f93753b1b9b96d35941f8a39c7e3b1695a49bff8076cb92b718524ddf1449ffa97d26ae289ad493695a8bfbeadb6bee0030f649bef02e0ae155ca851713e SHA512 94c019f5d5e8bec9d817d4b192ae0b87effc9f73283800b6ee7b5fe50a85bf6e245eb9720c2d8f3b497b40c7e298969c5e23c5afe3af14384eee92e76afacc8c
diff --git a/media-libs/icclib/files/icclib-2.14-c23.patch b/media-libs/icclib/files/icclib-2.14-c23.patch
new file mode 100644
index 000000000000..d4121ee6797c
--- /dev/null
+++ b/media-libs/icclib/files/icclib-2.14-c23.patch
@@ -0,0 +1,38 @@
+--- work.old/icc.c 2025-02-25 20:02:36.215180328 +0400
++++ work/icc.c 2025-02-25 20:04:09.711060955 +0400
+@@ -17326,7 +17326,7 @@
+ /* Returned static buffer is re-used every 5 calls. */
+ char *icmPiv(int di, int *p) {
+ static char buf[5][MAX_CHAN * 16];
+- static ix = 0;
++ static size_t ix = 0;
+ int e;
+ char *bp;
+
+@@ -17349,7 +17349,7 @@
+ /* Returned static buffer is re-used every 5 calls. */
+ char *icmPdv(int di, double *p) {
+ static char buf[5][MAX_CHAN * 16];
+- static ix = 0;
++ static size_t ix = 0;
+ int e;
+ char *bp;
+
+@@ -17372,7 +17372,7 @@
+ /* Returned static buffer is re-used every 5 calls. */
+ char *icmPfv(int di, float *p) {
+ static char buf[5][MAX_CHAN * 16];
+- static ix = 0;
++ static size_t ix = 0;
+ int e;
+ char *bp;
+
+@@ -17395,7 +17395,7 @@
+ /* Returned static buffer is re-used every 5 calls. */
+ char *icmPLab(double *p) {
+ static char buf[5][MAX_CHAN * 16];
+- static ix = 0;
++ static size_t ix = 0;
+ int e;
+ char *bp;
+ double lab[3];
diff --git a/media-libs/icclib/files/icclib-2.14-make.patch b/media-libs/icclib/files/icclib-2.14-make.patch
deleted file mode 100644
index 14e69f17f21a..000000000000
--- a/media-libs/icclib/files/icclib-2.14-make.patch
+++ /dev/null
@@ -1,114 +0,0 @@
---- icclib_V2.14/Makefile
-+++ icclib_V2.14/Makefile
-@@ -3,13 +3,13 @@
- # by uncommenting the appropriate line:
-
- # Microsoft C++, WinNT setup
--include Makefile.WNT
-+#include Makefile.WNT
-
- # IBM C++, WinNT setup
- #include Makefile.IBMNT
-
- # Generic UNIX setup
--#include Makefile.UNIX
-+include Makefile.UNIX
-
- # Apple OSX
- #include Makefile.OSX
-@@ -32,7 +32,7 @@
-
-
- icc$(SUFOBJ): icc.c icc.h
-- $(CC) $(CCOF)icc$(SUFOBJ) icc.c
-+ $(CC) $(CFLAGS) $(CCOF)icc$(SUFOBJ) icc.c
-
- libicc$(SUFLIB): icc$(SUFOBJ)
- $(LIBU) $(LIBOF)libicc$(SUFLIB) icc$(SUFOBJ)
-@@ -41,39 +41,39 @@
-
- # Separate for executables
- iccstd$(SUFOBJ): iccstd.c icc.h
-- $(CC) $(CCOF)iccstd$(SUFOBJ) iccstd.c
-+ $(CC) $(CFLAGS) $(CCOF)iccstd$(SUFOBJ) iccstd.c
-
-
- icctest$(SUFOBJ): icctest.c icc.h
-- $(CC) $(CCOF)icctest$(SUFOBJ) icctest.c
-+ $(CC) $(CFLAGS) $(CCOF)icctest$(SUFOBJ) icctest.c
-
- icctest$(SUFEXE): icctest$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
- $(LINK) $(LINKOF)icctest$(SUFEXE) icctest$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
-
-
- lutest$(SUFOBJ): lutest.c icc.h
-- $(CC) $(CCOF)lutest$(SUFOBJ) lutest.c
-+ $(CC) $(CFLAGS) $(CCOF)lutest$(SUFOBJ) lutest.c
-
- lutest$(SUFEXE): lutest$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
- $(LINK) $(LINKOF)lutest$(SUFEXE) lutest$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
-
-
- icclu$(SUFOBJ): icclu.c icc.h
-- $(CC) $(CCOF)icclu$(SUFOBJ) icclu.c
-+ $(CC) $(CFLAGS) $(CCOF)icclu$(SUFOBJ) icclu.c
-
- icclu$(SUFEXE): icclu$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
- $(LINK) $(LINKOF)icclu$(SUFEXE) icclu$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
-
-
- iccdump$(SUFOBJ): iccdump.c icc.h
-- $(CC) $(CCOF)iccdump$(SUFOBJ) iccdump.c
-+ $(CC) $(CFLAGS) $(CCOF)iccdump$(SUFOBJ) iccdump.c
-
- iccdump$(SUFEXE): iccdump$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
- $(LINK) $(LINKOF)iccdump$(SUFEXE) iccdump$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
-
-
- iccrw$(SUFOBJ): iccrw.c icc.h
-- $(CC) $(CCOF)iccrw$(SUFOBJ) iccrw.c
-+ $(CC) $(CFLAGS) $(CCOF)iccrw$(SUFOBJ) iccrw.c
-
- iccrw$(SUFEXE): iccrw$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
- $(LINK) $(LINKOF)iccrw$(SUFEXE) iccrw$(SUFOBJ) iccstd$(SUFOBJ) libicc$(SUFLIB)
---- icclib_V2.14/Makefile.UNIX
-+++ icclib_V2.14/Makefile.UNIX
-@@ -1,7 +1,7 @@
- # Generic UNIX setup
-
- SLASH = /
--SUFLIB = .a
-+SUFLIB = .so
- SUFOBJ = .o
- SUFEXE =
- CMDSEP = ;
-@@ -18,21 +18,22 @@
- STDHDRSDEF = /usr/include
-
- MAKEU = make
--LIBU = ar -r
--LIBOF = -o
-+LIBOF =
- RANLIB = echo
- AS = as
--CCFLAGSDEF = -DUNIX -c
--CC = cc $(CCFLAGS) $(INCFLAG)$(STDHDRS)
-+CCFLAGSDEF = -DUNIX -fPIC -c
-+CFLAGS += $(CCFLAGSDEF) $(INCFLAG)$(STDHDRS)
-+CC = cc
- CCOF = -o
--LINKFLAGSDEF = -lm
-+LINKFLAGSDEF = -shared
- LINKLIBS =
--LINK = cc $(LINKFLAGS) $(LINKLIBS)
-+LINK = $(CC) $(LINKFLAGSDEF) $(LDFLAGS) $(LINKLIBS)
- LINKOF = -o
-+LIBU = $(CC) $(LINKFLAGSDEF) $(LDFLAGS) -Wl,-soname,libicc.so.$(ICCLIB_SOVERSION) $(LINKLIBS) -o
-
- .SUFFIXES:
- .SUFFIXES: .c $(SUFLIB) $(SUFOBJ) $(SUFEXE)
-
- .c$(SUFOBJ):
-- $(CC) $(CCOF)$*$(SUFOBJ) $<
-+ $(CC) $(CFLAGS) $(CCOF)$*$(SUFOBJ) $<
-
diff --git a/media-libs/icclib/files/meson-3.2.0.build b/media-libs/icclib/files/meson-3.2.0.build
new file mode 100644
index 000000000000..f6c2886e3e62
--- /dev/null
+++ b/media-libs/icclib/files/meson-3.2.0.build
@@ -0,0 +1,59 @@
+project('icclib', 'c', version: '3.2.0')
+
+add_project_arguments('-DUNIX', language: 'c')
+
+cc = meson.get_compiler('c')
+
+math = cc.find_library('m', required: false)
+
+icclib = library(
+ 'icc',
+ 'icc.c',
+ soversion: '0',
+ dependencies: math,
+ install: true,
+)
+
+executable(
+ 'iccdump',
+ ['iccdump.c', 'iccstd.c'],
+ install: true,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'lutest',
+ ['lutest.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'icclu',
+ ['icclu.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'iccrw',
+ ['iccrw.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'icctest',
+ ['icctest.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'mkDispProf',
+ ['mkDispProf.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
+
diff --git a/media-libs/icclib/files/meson.build b/media-libs/icclib/files/meson.build
new file mode 100644
index 000000000000..10458037f253
--- /dev/null
+++ b/media-libs/icclib/files/meson.build
@@ -0,0 +1,51 @@
+project('icclib', 'c', version: '2.14')
+
+add_project_arguments('-DUNIX', language: 'c')
+
+cc = meson.get_compiler('c')
+
+math = cc.find_library('m', required: false)
+
+icclib = library(
+ 'icc',
+ 'icc.c',
+ soversion: '0',
+ dependencies: math,
+ install: true,
+)
+
+executable(
+ 'iccdump',
+ ['iccdump.c', 'iccstd.c'],
+ install: true,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'lutest',
+ ['lutest.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'icclu',
+ ['icclu.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'iccrw',
+ ['iccrw.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
+executable(
+ 'icctest',
+ ['icctest.c', 'iccstd.c'],
+ install: false,
+ link_with: icclib,
+ dependencies: math,
+)
diff --git a/media-libs/icclib/icclib-2.14.ebuild b/media-libs/icclib/icclib-2.14-r1.ebuild
index b472dd74897b..611893bd5c6e 100644
--- a/media-libs/icclib/icclib-2.14.ebuild
+++ b/media-libs/icclib/icclib-2.14-r1.ebuild
@@ -1,15 +1,16 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit toolchain-funcs
+inherit meson
MY_P="${PN}_V${PV}"
DESCRIPTION="Library for reading and writing ICC color profile files"
HOMEPAGE="http://freshmeat.sourceforge.net/projects/icclib"
SRC_URI="http://www.argyllcms.com/${MY_P}.zip"
+S="${WORKDIR}"
LICENSE="BSD"
SLOT="0"
@@ -17,26 +18,27 @@ KEYWORDS="~amd64 ~x86"
BDEPEND="app-arch/unzip"
-S="${WORKDIR}"
-
PATCHES=(
- "${FILESDIR}"/${P}-make.patch
- "${FILESDIR}"/${P}-fno-common.patch
+ "${FILESDIR}/${P}-fno-common.patch"
+ "${FILESDIR}/${P}-c23.patch"
)
-src_compile() {
- ICCLIB_SOVERSION="0"
- emake CC="$(tc-getCC)" ICCLIB_SOVERSION="${ICCLIB_SOVERSION}"
+src_prepare() {
+ default
+
+ cp "${FILESDIR}"/meson.build . || die "Failed to move corrected build system"
}
-src_install() {
- dobin iccdump
+src_test() {
+ "${BUILD_DIR}"/iccdump 2>&1 | tee log
+ if ! grep -q "Dump an ICC file in human readable form" log ; then
+ die "Executable couldn't be started"
+ fi
+}
- mv libicc.so libicc.so.${ICCLIB_SOVERSION} || die
- dolib.so libicc.so.${ICCLIB_SOVERSION}
- dosym libicc.so.${ICCLIB_SOVERSION} /usr/$(get_libdir)/libicc.so
+src_install() {
+ meson_install
doheader icc*.h
-
dodoc Readme.txt todo.txt log.txt
}
diff --git a/media-libs/icclib/icclib-3.2.0.ebuild b/media-libs/icclib/icclib-3.2.0.ebuild
new file mode 100644
index 000000000000..b4bca6f0793b
--- /dev/null
+++ b/media-libs/icclib/icclib-3.2.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+MY_P="ICCLib_V${PV}"
+
+DESCRIPTION="Library for reading and writing ICC color profile files"
+HOMEPAGE="https://https://argyllcms.com/icclibsrc.html"
+SRC_URI="https://www.argyllcms.com/${MY_P}_src.zip -> ${MY_P}.zip"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="app-arch/unzip"
+
+src_prepare() {
+ default
+
+ cp "${FILESDIR}"/meson-"${PV}".build ./meson.build || die "Failed to move corrected build system"
+}
+
+src_test() {
+ "${BUILD_DIR}"/iccdump sRGB.icm || die
+}
+
+src_install() {
+ meson_install
+
+ doheader icc*.h
+ dodoc Readme.txt todo.txt log.txt
+}