diff --git a/graphics/argyllcms/Makefile b/graphics/argyllcms/Makefile index e32d603737e0..fc462e229690 100644 --- a/graphics/argyllcms/Makefile +++ b/graphics/argyllcms/Makefile @@ -1,34 +1,44 @@ PORTNAME= argyllcms -PORTVERSION= 1.9.2 -PORTREVISION= 7 +PORTVERSION= 3.5.0 CATEGORIES= graphics MASTER_SITES= https://www.argyllcms.com/ DISTNAME= Argyll_V${PORTVERSION}_src MAINTAINER= ports@FreeBSD.org COMMENT= ICC compatible color management system WWW= https://www.argyllcms.com/ LICENSE= AGPLv3 BUILD_DEPENDS= jam:devel/jam -LIB_DEPENDS= libtiff.so:graphics/tiff \ - libpng.so:graphics/png - +LIB_DEPENDS= libjpeg.so:graphics/jpeg-turbo \ + libmxml.so:textproc/mxml \ + libpng.so:graphics/png \ + libtiff.so:graphics/tiff \ + libyajl.so:devel/yajl + +EXCLUDE= zlib tiff png jpeg usb xml yajl +EXTRACT_AFTER_ARGS=${EXCLUDE:C|^(.*)$|-x */\1/*|} WRKSRC= ${WRKDIR}/Argyll_V${PORTVERSION} +MAKE_ENV+= CCFLAGS="${CFLAGS} -DUNIX -Wno-dangling-else" USES= compiler:c11 cpe jpeg ssl xorg zip USE_XORG= x11 xau xdmcp xext xinerama xrandr xscrnsaver xxf86vm +post-patch: + ${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ + ${WRKSRC}/Jamtop ${WRKSRC}/Jambase + do-build: @cd ${WRKSRC} && ${MAKE_ENV} jam -dx -q -fJambase -j${MAKE_JOBS_NUMBER} do-install: @cd ${WRKSRC} && ${SETENV} DESTDIR=${STAGEDIR} ${MAKE_ENV} \ REFSUBDIR=share/argyll/ref \ jam -dx -q -fJambase -j${MAKE_JOBS_NUMBER} install ${MV} ${STAGEDIR}${PREFIX}/bin/License.txt \ ${STAGEDIR}${PREFIX}/share/argyll/ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/* + .include diff --git a/graphics/argyllcms/distinfo b/graphics/argyllcms/distinfo index 3ea739365171..69d3184db84b 100644 --- a/graphics/argyllcms/distinfo +++ b/graphics/argyllcms/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1479769420 -SHA256 (Argyll_V1.9.2_src.zip) = 4d61ae0b91686dea721d34df2e44eaf36c88da87086fd50ccc4e999a58e9ce90 -SIZE (Argyll_V1.9.2_src.zip) = 13624924 +TIMESTAMP = 1777157893 +SHA256 (Argyll_V3.5.0_src.zip) = f8576ce5589fd15620abb73ff049ea31f55ddbd1bba6d1ffa87452658e7bc85f +SIZE (Argyll_V3.5.0_src.zip) = 15352322 diff --git a/graphics/argyllcms/files/patch-Jambase b/graphics/argyllcms/files/patch-Jambase index 41d58080be7e..2f448f93ff3d 100644 --- a/graphics/argyllcms/files/patch-Jambase +++ b/graphics/argyllcms/files/patch-Jambase @@ -1,24 +1,15 @@ ---- Jambase.orig 2016-09-28 02:58:53 UTC +--- Jambase +++ Jambase -@@ -966,7 +966,7 @@ else if $(UNIX) - YACCFILES ?= y.tab ; - YACCFLAGS ?= -d ; - -- HDRS ?= /usr/local/include ; -+ HDRS ?= $(LOCALBASE)/include ; - - # Add some good defaults for OS X - if $(OS) = MACOSX { -@@ -999,7 +999,11 @@ else if $(UNIX) +@@ -1038,7 +1038,11 @@ else if $(UNIX) # General defaults; a lot like UNIX # - AR ?= ar rusc ; + if ! $(AR) { + AR = ar rusc ; + } else { + AR += rusc ; + } AS ?= as ; ASFLAGS ?= ; AWK ?= awk ; diff --git a/graphics/argyllcms/files/patch-Jamfile b/graphics/argyllcms/files/patch-Jamfile new file mode 100644 index 000000000000..585b065e5cd6 --- /dev/null +++ b/graphics/argyllcms/files/patch-Jamfile @@ -0,0 +1,17 @@ +The purpose of the com.argyllcms.metainfo.xml is unclear, it claims the +license to be MIT -- rather than AGPLv3 stated elsewhere -- and it +certainly does not belong in bin/ + +Just disabling it for now. + + -mi + +--- Jamfile 2026-02-09 17:25:03.000000000 -0500 ++++ Jamfile 2026-04-26 01:31:03.587297000 -0400 +@@ -19,5 +19,5 @@ + + #Install +-InstallFile $(DESTDIR)$(PREFIX)/bin : com.argyllcms.metainfo.xml ; ++# InstallFile $(DESTDIR)$(PREFIX)/bin : com.argyllcms.metainfo.xml ; + + # Need compile date ? diff --git a/graphics/argyllcms/files/patch-Jamtop b/graphics/argyllcms/files/patch-Jamtop index d68103a50548..b0de7a9a7a62 100644 --- a/graphics/argyllcms/files/patch-Jamtop +++ b/graphics/argyllcms/files/patch-Jamtop @@ -1,49 +1,11 @@ ---- Jamtop.orig 2017-05-22 19:09:44 UTC +--- Jamtop +++ Jamtop -@@ -76,8 +76,8 @@ if $(UNIX) { - LibWinH = /usr/X11R6/include ; - } else if [ GLOB /usr/include/X11 : X.h ] { - LibWinH = /usr/include ; -- } else if [ GLOB /usr/local/include/X11 : X.h ] { -- LibWinH = /usr/local/include ; -+ } else if [ GLOB $(LOCALBASE)/include/X11 : X.h ] { -+ LibWinH = $(LOCALBASE)/include ; - } else { - EXIT Unable to locate the X11 include files ; - } -@@ -91,8 +91,8 @@ if $(UNIX) { - LibWinD = /usr/lib64 ; - } else if [ GLOB /usr/lib : libX11.so libX11.a ] { - LibWinD = /usr/lib ; -- } else if [ GLOB /usr/local/lib : libX11.so libX11.a ] { -- LibWinD = /usr/local/lib ; -+ } else if [ GLOB $(LOCALBASE)/lib : libX11.so libX11.a ] { -+ LibWinD = $(LOCALBASE)/lib ; - } else { - ECHO Unable to locate the 64 bit X11 library files ; - } -@@ -103,8 +103,8 @@ if $(UNIX) { - LibWinD = /usr/lib/i386-linux-gnu ; - } else if [ GLOB /usr/lib : libX11.so libX11.a ] { - LibWinD = /usr/lib ; -- } else if [ GLOB /usr/local/lib : libX11.so libX11.a ] { -- LibWinD = /usr/local/lib ; -+ } else if [ GLOB $(LOCALBASE)/lib : libX11.so libX11.a ] { -+ LibWinD = $(LOCALBASE)/lib ; - } else { - ECHO Unable to locate the 32 bit X11 library files ; +@@ -167,7 +167,7 @@ rule CheckForLibrary { + echo "Using system $(UCASE) library" ; + $(UCASE)LIB = ; + $(UCASE)INC = ; +- LINKFLAGS += $(LINKFLAG)$(lcase) ; ++ LINKFLAGS += -L$(LOCALBASE)/lib $(LINKFLAG)$(lcase) ; + HAVE_$(UCASE) = true ; } -@@ -140,11 +140,11 @@ rule CheckForLibrary { - - if ! $(BUILTIN_$(UCASE)) && $(UNIX) { - if [ GLOB /usr/include$(subd) : $(lcase).h $(lcase)lib.h ] -- || [ GLOB /usr/local/include$(subd) : $(lcase).h $(lcase)lib.h ] -+ || [ GLOB $(LOCALBASE)/include$(subd) : $(lcase).h $(lcase)lib.h ] - || [ GLOB /usr/include/x86_64-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] - || [ GLOB /usr/include/i386-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] { - if [ GLOB /usr/lib : lib$(lcase).so ] || [ GLOB /usr/lib : lib$(lcase).a ] -- || [ GLOB /usr/local/lib : lib$(lcase).so ] || [ GLOB /usr/local/lib : lib$(lcase).a ] -+ || [ GLOB $(LOCALBASE)/lib : lib$(lcase).so ] || [ GLOB /usr/local/lib : lib$(lcase).a ] - || [ GLOB /usr/lib64 : lib$(lcase).so ] || [ GLOB /usr/lib64 : lib$(lcase).a ] - || [ GLOB /usr/lib/x86_64-linux-gnu : lib$(lcase).so ] - || [ GLOB /usr/lib/x86_64-linux-gnu : lib$(lcase).a ] + } diff --git a/graphics/argyllcms/files/patch-gamut_gamut.h b/graphics/argyllcms/files/patch-gamut_gamut.h deleted file mode 100644 index 2b447b336b7b..000000000000 --- a/graphics/argyllcms/files/patch-gamut_gamut.h +++ /dev/null @@ -1,11 +0,0 @@ ---- gamut/gamut.h.orig 2020-08-19 11:32:00 UTC -+++ gamut/gamut.h -@@ -36,7 +36,7 @@ - #define MAXGAMN 10 /* Maximum gamut point neighbors returned */ - #define NSLOTS 6 /* Number of maximum direction slots */ - --struct _vrml *wrl; /* Declared in vrml.h, which may be #included after this */ -+extern struct _vrml *wrl; /* Declared in vrml.h, which may be #included after this */ - - /* ------------------------------------ */ - #define NODE_STRUCT \ diff --git a/graphics/argyllcms/files/patch-gcc5 b/graphics/argyllcms/files/patch-gcc5 deleted file mode 100644 index 96961ddd3737..000000000000 --- a/graphics/argyllcms/files/patch-gcc5 +++ /dev/null @@ -1,20 +0,0 @@ -Description: Fix FTBFS with GCC 5 -Author: James Cowgill -Bug-Debian: https://bugs.debian.org/777779 -Forwarded: no ---- -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- icc/icc.h -+++ icc/icc.h -@@ -100,7 +100,11 @@ - #define CF64PREC "LL" /* Constant precision specifier */ - - #ifndef ATTRIBUTE_NORETURN -+#ifdef _MSC_VER - # define ATTRIBUTE_NORETURN __declspec(noreturn) -+#else -+# define ATTRIBUTE_NORETURN __attribute__((noreturn)) -+#endif - #endif - - #else /* !__STDC_VERSION__ */ diff --git a/graphics/argyllcms/files/patch-mxml b/graphics/argyllcms/files/patch-mxml new file mode 100644 index 000000000000..491b5245f553 --- /dev/null +++ b/graphics/argyllcms/files/patch-mxml @@ -0,0 +1,270 @@ +The changes necessary to use the newer MiniXML version. +Tested against mxml-3.3.1. + + -mi + +--- namedc/namedc.c 2026-02-09 17:25:54.000000000 -0500 ++++ namedc/namedc.c 2026-04-25 22:37:10.093787000 -0400 +@@ -120,10 +120,10 @@ + static mxml_type_t + type_cb(mxml_node_t *node) { +- const char *name = node->value.element.name; ++ const char *name = mxmlGetElement(node); + mxml_node_t *parent = mxmlGetParent(node); + const char *pname = NULL; + + if (parent != NULL) +- pname = parent->value.element.name; ++ pname = mxmlGetElement(parent); + + // printf("~1 type_cb got node named '%s', parent '%s'\n",name,pname); +@@ -345,7 +345,7 @@ + return p->errc = 1; + } +- name = cxf->value.element.name; ++ name = mxmlGetElement(cxf); + +- if ((attr = strchr(cxf->value.element.name, ':')) != NULL) { ++ if ((attr = strchr(name, ':')) != NULL) { + int len = attr - name; + if (len > 99) +@@ -390,5 +390,5 @@ + /* Grab the description */ + if (cxf2) { +- if ((node = mxmlFindPathNode(cxf, pfxp(p,"Palette"))) == NULL ++ if ((node = mxmlFindPath(cxf, pfxp(p, "Palette"))) == NULL + || (name = mxmlElementGetAttr(node, "PaletteName")) == NULL) + name = NULL; +@@ -407,5 +407,5 @@ + + } else { /* else cxf3 */ +- if ((node = mxmlFindPathNode(cxf, pfxp(p,"FileInformation/Description"))) == NULL) ++ if ((node = mxmlFindPath(cxf, pfxp(p,"FileInformation/Description"))) == NULL) + name = NULL; + else +@@ -425,7 +425,7 @@ + + /* Look through the color specifications and see if there are spectral details */ +- pnode = mxmlFindPathNode(cxf, pfxp(p,"Resources/ColorSpecificationCollection/ColorSpecification/WavelengthRange")); ++ pnode = mxmlFindPath(cxf, pfxp(p,"Resources/ColorSpecificationCollection/ColorSpecification/WavelengthRange")); + if (pnode == NULL) +- pnode = mxmlFindPathNode(cxf, pfxp(p,"Resources/ColorSpecificationCollection/ColorSpecification/MeasurementSpec/WavelengthRange")); ++ pnode = mxmlFindPath(cxf, pfxp(p,"Resources/ColorSpecificationCollection/ColorSpecification/MeasurementSpec/WavelengthRange")); + while (pnode != NULL) { + name = mxmlElementGetAttr(pnode, "StartWL"); +@@ -454,5 +454,5 @@ + if (cxf2) { + /* Locate the Palette/ColorSet node */ +- if ((pnode = mxmlFindPathNode(cxf, pfxp(p,"Palette/ColorSet"))) == NULL) { ++ if ((pnode = mxmlFindPath(cxf, pfxp(p,"Palette/ColorSet"))) == NULL) { + snprintf(p->err, NAMEDC_ERRL, "Failed to find Resources/ObjectCollection in '%s'",p->filename); + a1logd(p->log, 1, "read_cxf: %s\n",p->err); +@@ -468,5 +468,5 @@ + } else { + /* Locate the Resources/ObjectCollection node */ +- if ((pnode = mxmlFindPathNode(cxf, pfxp(p,"Resources/ObjectCollection"))) == NULL) { ++ if ((pnode = mxmlFindPath(cxf, pfxp(p,"Resources/ObjectCollection"))) == NULL) { + snprintf(p->err, NAMEDC_ERRL, "Failed to find Resources/ObjectCollection in '%s'",p->filename); + a1logd(p->log, 1, "read_cxf: %s\n",p->err); +@@ -500,7 +500,8 @@ + goto next; + } +- a1logd(p->log, DEB6, "read_cxf: read node '%s'\n",node->value.element.name); ++ a1logd(p->log, DEB6, "read_cxf: read node '%s'\n", name); + +- if (strcmp(node->value.element.name, pfx(p,SampleKey)) != 0) { ++ name = mxmlGetElement(node); ++ if (strcmp(name, pfx(p,SampleKey)) != 0) { + a1logd(p->log, DEB6, "read_cxf: skipping non %s node\n",SampleKey); + goto next; +@@ -776,5 +777,5 @@ + if (cxf2) { + /* Grab the creator */ +- if ((node = mxmlFindPathNode(cxf, pfxp(p,"Preamble/Header/Creator"))) == NULL) ++ if ((node = mxmlFindPath(cxf, pfxp(p, "Preamble/Header/Creator"))) == NULL) + name = NULL; + else +@@ -792,5 +793,5 @@ + + /* Grab the illuminant type */ +- if ((node = mxmlFindPathNode(cxf, pfxp(p,"Palette/ColorSet/CollectionColorSpaceSpecification/ColorSpaceSpecificationSpectrumTristimulus/IlluminationOptions/Illuminant"))) == NULL ++ if ((node = mxmlFindPath(cxf, pfxp(p, "Palette/ColorSet/CollectionColorSpaceSpecification/ColorSpaceSpecificationSpectrumTristimulus/IlluminationOptions/Illuminant"))) == NULL + || (name = mxmlGetOpaque(node)) == NULL) { + a1logd(p->log, 2, "read_cxf: failed to locate Illuminant - assuming D50\n"); +@@ -815,5 +816,5 @@ + + /* Grab the observer type */ +- if ((node = mxmlFindPathNode(cxf, pfxp(p,"Palette/ColorSet/CollectionColorSpaceSpecification/ColorSpaceSpecificationSpectrumTristimulus/FieldOfView"))) == NULL ++ if ((node = mxmlFindPath(cxf, pfxp(p,"Palette/ColorSet/CollectionColorSpaceSpecification/ColorSpaceSpecificationSpectrumTristimulus/FieldOfView"))) == NULL + || (name = mxmlGetOpaque(node)) == NULL) { + a1logd(p->log, 2, "read_cxf: failed to locate FieldOfView - assuming 2 degree\n"); +@@ -835,5 +836,5 @@ + + /* Grab the creator */ +- if ((node = mxmlFindPathNode(cxf, pfxp(p,"FileInformation/Creator"))) == NULL) ++ if ((node = mxmlFindPath(cxf, pfxp(p,"FileInformation/Creator"))) == NULL) + name = NULL; + else +@@ -856,5 +857,5 @@ + /* Look through the color specifications and find the one that matches */ + /* the Lab or XYZ color specification */ +- pnode = mxmlFindPathNode(cxf, pfxp(p,"Resources/ColorSpecificationCollection/ColorSpecification")); ++ pnode = mxmlFindPath(cxf, pfxp(p,"Resources/ColorSpecificationCollection/ColorSpecification")); + while (pnode != NULL) { + name = mxmlElementGetAttr(pnode, "Id"); +@@ -866,5 +867,5 @@ + + /* Grab the illuminant type */ +- if ((node = mxmlFindPathNode(pnode, pfxp(p,"TristimulusSpec/Illuminant"))) == NULL ++ if ((node = mxmlFindPath(pnode, pfxp(p,"TristimulusSpec/Illuminant"))) == NULL + || (name = mxmlGetOpaque(node)) == NULL) { + a1logd(p->log, 2, "read_cxf: failed to locate Illuminant - assuming D50\n"); +@@ -889,5 +890,5 @@ + + /* Grab the first observer type */ +- if ((node = mxmlFindPathNode(cxf, pfxp(p,"Resources/ColorSpecificationCollection/ColorSpecification/TristimulusSpec/Observer"))) == NULL ++ if ((node = mxmlFindPath(cxf, pfxp(p,"Resources/ColorSpecificationCollection/ColorSpecification/TristimulusSpec/Observer"))) == NULL + || (name = mxmlGetOpaque(node)) == NULL) { + a1logd(p->log, 2, "read_cxf: failed to locate Observer - assuming 2 degree\n"); +--- profile/cxf2ti3.c 2026-02-09 17:25:29.000000000 -0500 ++++ profile/cxf2ti3.c 2026-04-26 00:23:21.375782000 -0400 +@@ -88,10 +88,10 @@ + static mxml_type_t + type_cb(mxml_node_t *node) { +- const char *name = node->value.element.name; ++ const char *name = mxmlGetElement(node); + mxml_node_t *parent = mxmlGetParent(node); + const char *pname = NULL; + + if (parent != NULL) +- pname = parent->value.element.name; ++ pname = mxmlGetElement(parent); + + // printf("~1 type_cb got node named '%s', parent '%s'\n",name,pname); +@@ -425,7 +425,7 @@ + error("Top element is not type MXML_ELEMENT in '%s'",inname); + } +- name = cxf->value.element.name; ++ name = mxmlGetElement(cxf); + +- if ((attr = strchr(cxf->value.element.name, ':')) != NULL) { ++ if ((attr = strchr(name, ':')) != NULL) { + int len = attr - name; + if (len > 99) +@@ -471,5 +471,5 @@ + + /* Copy the description */ +- if ((node = mxmlFindPathNode(cxf, pfxp(&ctx,"FileInformation/Description"))) != NULL) { ++ if ((node = mxmlFindPath(cxf, pfxp(&ctx,"FileInformation/Description"))) != NULL) { + name = mxmlGetOpaque(node); + a1logd(g_log, 2, "cxf2ti3: got description '%s'\n",name); +@@ -479,5 +479,5 @@ + + /* Grab the creator */ +- if ((node = mxmlFindPathNode(cxf, pfxp(&ctx,"FileInformation/Creator"))) != NULL) { ++ if ((node = mxmlFindPath(cxf, pfxp(&ctx,"FileInformation/Creator"))) != NULL) { + name = mxmlGetOpaque(node); + a1logd(g_log, 2, "cxf2ti3: got creator '%s'\n",name); +@@ -486,5 +486,5 @@ + } + +- if ((node = mxmlFindPathNode(cxf, pfxp(&ctx,"FileInformation/CreationDate"))) != NULL) { ++ if ((node = mxmlFindPath(cxf, pfxp(&ctx,"FileInformation/CreationDate"))) != NULL) { + name = mxmlGetOpaque(node); + a1logd(g_log, 2, "cxf2ti3: got creation date '%s'\n",name); +@@ -495,12 +495,12 @@ + /* Look through the color specifications and see if there are spectral details */ + a1logd(g_log, 4, "cxf2ti3: Looking through color specifications for spectral details\n"); +- pnode = mxmlFindPathNode(cxf, pfxp(&ctx,"Resources/ColorSpecificationCollection/ColorSpecification/WavelengthRange")); ++ pnode = mxmlFindPath(cxf, pfxp(&ctx,"Resources/ColorSpecificationCollection/ColorSpecification/WavelengthRange")); + if (pnode == NULL) +- pnode = mxmlFindPathNode(cxf, pfxp(&ctx,"Resources/ColorSpecificationCollection/ColorSpecification/MeasurementSpec/WavelengthRange")); ++ pnode = mxmlFindPath(cxf, pfxp(&ctx,"Resources/ColorSpecificationCollection/ColorSpecification/MeasurementSpec/WavelengthRange")); + + if (pnode == NULL) +- pnode = mxmlFindPathNode(cxf, pfxp(&ctx,"Resources/ColourSpecificationCollection/ColourSpecification/WavelengthRange")); ++ pnode = mxmlFindPath(cxf, pfxp(&ctx,"Resources/ColourSpecificationCollection/ColourSpecification/WavelengthRange")); + if (pnode == NULL) +- pnode = mxmlFindPathNode(cxf, pfxp(&ctx,"Resources/ColourSpecificationCollection/ColourSpecification/MeasurementSpec/WavelengthRange")); ++ pnode = mxmlFindPath(cxf, pfxp(&ctx,"Resources/ColourSpecificationCollection/ColourSpecification/MeasurementSpec/WavelengthRange")); + + if (pnode == NULL) +@@ -540,5 +540,5 @@ + + /* Locate the Resources/ObjectCollection node */ +- if ((pnode = mxmlFindPathNode(cxf, pfxp(&ctx,"Resources/ObjectCollection"))) == NULL) { ++ if ((pnode = mxmlFindPath(cxf, pfxp(&ctx,"Resources/ObjectCollection"))) == NULL) { + error("Failed to find Resources/ObjectCollection in '%s'",inname); + } +@@ -564,7 +564,8 @@ + goto next; + } +- a1logd(g_log, 6, "cxf2ti3: read node '%s'\n",node->value.element.name); ++ name = mxmlGetElement(node); ++ a1logd(g_log, 6, "cxf2ti3: read node '%s'\n", name); + +- if (strcmp(node->value.element.name, pfx(&ctx,"Object")) != 0) { ++ if (strcmp(name, pfx(&ctx, "Object")) != 0) { + a1logd(g_log, 6, "cxf2ti3: skipping non %s node\n","Object"); + goto next; +--- profile/ls2ti3.c 2026-02-09 17:25:29.000000000 -0500 ++++ profile/ls2ti3.c 2026-04-26 00:28:35.173791000 -0400 +@@ -59,10 +59,11 @@ + mxml_node_t *parent = mxmlGetParent(node); + const char *pname; +- const char *name = node->value.element.name; ++ const char *name; + + if (parent == NULL) + return MXML_TEXT; + +- pname = parent->value.element.name; ++ name = mxmlGetElement(node); ++ pname = mxmlGetElement(parent); + + // printf("~1 type_cb got pnode '%s' node '%s'\n",pname, name); +@@ -185,5 +186,5 @@ + error("Failed to find top element in '%s'",inname); + +- if (strcmp(top->value.element.name, "builder_color_space") != 0) ++ if (strcmp(mxmlGetElement(top), "builder_color_space") != 0) + error("'%s' doesn't seem to be a LightSpace .bcs file ?",inname); + +@@ -238,5 +239,5 @@ + goto next; + } +- a1logd(g_log, DEB, "read node '%s'\n",node->value.element.name); ++ a1logd(g_log, DEB, "read node '%s'\n", mxmlGetElement(node)); + + if ((attr = mxmlElementGetAttr(node, "frame")) == NULL) { +--- profile/Jamfile 2026-02-09 17:25:29.000000000 -0500 ++++ profile/Jamfile 2026-04-26 01:02:04.153120000 -0400 +@@ -36,4 +36,5 @@ + + LINKFLAGS += $(GUILINKFLAGS) ; ++LINKFLAGS += -lmxml ; + + # Simple profile generator +@@ -53,8 +54,8 @@ + + #CxF to Argyll CGATS format +-Main cxf2ti3 : cxf2ti3.c : : : ../xml : : ../xml/libmxml ; ++Main cxf2ti3 : cxf2ti3.c ; + + #LightSpace to Argyll CGATS format +-Main ls2ti3 : ls2ti3.c : : : ../xml : : ../xml/libmxml ; ++Main ls2ti3 : ls2ti3.c ; + + #Split a .ti3 into two pieces randomly +--- namedc/Jamfile 2026-02-09 17:25:54.000000000 -0500 ++++ namedc/Jamfile 2026-04-26 01:04:05.783387000 -0400 +@@ -12,7 +12,8 @@ + + LINKLIBS = ./libnamedc ../xicc/libxicc ../spectro/libconv ../icc/libicc ../cgats/libcgats +- ../plot/libplot ../numlib/libui ../numlib/libnum ../xml/libmxml ; ++ ../plot/libplot ../numlib/libui ../numlib/libnum ; + + LINKFLAGS += $(GUILINKFLAGS) ; ++LINKFLAGS += -lmxml ; + + # Individual stand alone test of namedc diff --git a/graphics/argyllcms/files/patch-spectro_dispwin.c b/graphics/argyllcms/files/patch-spectro_dispwin.c index 4b1abadcd18a..920042b2e757 100644 --- a/graphics/argyllcms/files/patch-spectro_dispwin.c +++ b/graphics/argyllcms/files/patch-spectro_dispwin.c @@ -1,16 +1,87 @@ -Description: Add check for NULL pointer -Author: Jörg Frings-Fürst -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=700253 -Forwarded: http://www.freelists.org/post/argyllcms/dispwin-bad-command-line-option-makes-dispwin-segfault -Reviewed-by: -Last-Update: 2014-09-14 ---- spectro/dispwin.c.orig 2016-09-28 02:59:10 UTC -+++ spectro/dispwin.c -@@ -6055,6 +6055,7 @@ main(int argc, char *argv[]) { +--- spectro/dispwin.c 2026-02-09 17:25:25.000000000 -0500 ++++ spectro/dispwin.c 2026-04-25 21:46:10.494515000 -0400 +@@ -760,5 +760,5 @@ - /* Display number */ - else if (argv[fa][1] == 'd') { -+ if(na == NULL) usage(0,"-d parameter missing"); - if (strncmp(na,"web",3) == 0 - || strncmp(na,"WEB",3) == 0) { - webdisp = 8080; + primary = _XRRGetOutputPrimary(mydisplay, RootWindow(mydisplay,i)); +- debugrr2((errout,"XRRGetOutputPrimary returned XID %x\n",primary)); ++ debugrr2((errout, "XRRGetOutputPrimary returned XID %lx\n", primary)); + + if (primary != None) { +@@ -1000,5 +1000,5 @@ + Atom edid_atom, ret_type; + int ret_format; +- long ret_len = 0, ret_togo; ++ unsigned long ret_len = 0, ret_togo; + unsigned char *atomv = NULL; + int ii; +@@ -1166,5 +1166,5 @@ + Atom edid_atom, ret_type; + int ret_format = 8; +- long ret_len, ret_togo; ++ unsigned long ret_len, ret_togo; + unsigned char *atomv = NULL; + +@@ -1574,5 +1574,6 @@ + + if (nent != p->nent) { +- debugr2((errout,"XF86VidModeGetGammaRampSize number of entries %d inconsistent with previous value\n",nent,p->nent)); ++ debugr2((errout,"XF86VidModeGetGammaRampSize number of entries %d " ++ "inconsistent with previous value of %d\n", nent, p->nent)); + return NULL; + } +@@ -3567,5 +3568,5 @@ + Atom ret_type; + int ret_format; +- long ret_len, ret_togo; ++ unsigned long ret_len, ret_togo; + char aname[30]; + unsigned char *atomv = NULL; /* Profile loaded from/to atom */ +@@ -5439,5 +5440,6 @@ + + if (depth != p->fdepth) { +- debugr2((errout,"new_dispwin: Default Visual red mask 0x%x is not %d bits\n",vinfo->red_mask,p->fdepth)); ++ debugr2((errout, "new_dispwin: Default Visual red mask 0x%lx is not %d bits\n", ++ vinfo->red_mask, p->fdepth)); + XFree(vinfo); + dispwin_del(p); +@@ -5452,5 +5454,6 @@ + + if (depth != p->fdepth) { +- debugr2((errout,"new_dispwin: Default Visual green mask 0x%x is not %d bits\n",vinfo->red_mask,p->fdepth)); ++ debugr2((errout, "new_dispwin: Default Visual green mask 0x%lx is not %d bits\n", ++ vinfo->red_mask, p->fdepth)); + XFree(vinfo); + dispwin_del(p); +@@ -5465,5 +5468,6 @@ + + if (depth != p->fdepth) { +- debugr2((errout,"new_dispwin: Default Visual blue mask 0x%x is not %d bits\n",vinfo->red_mask,p->fdepth)); ++ debugr2((errout, "new_dispwin: Default Visual blue mask 0x%lx is not %d bits\n", ++ vinfo->red_mask, p->fdepth)); + XFree(vinfo); + dispwin_del(p); +@@ -5700,5 +5704,4 @@ + Atom optat; + unsigned int opaque = 0xffffffff; +- unsigned int xid = (unsigned int)rootwindow; /* Hope this is 32 bit */ + XChangeProperty( + p->mydisplay, p->mywindow, +@@ -5707,5 +5710,5 @@ + 32, /* format = bits in type of unsigned int */ + PropModeReplace, /* Change mode */ +- (char *)(&xid), /* Data is Root Window XID */ ++ (void *)(&rootwindow), /* Data is Root Window XID */ + 1 /* Number of elements of data */ + ); +@@ -5714,9 +5717,9 @@ + if ((optat = XInternAtom(p->mydisplay, "_NET_WM_WINDOW_OPACITY", False)) != None) { + XChangeProperty(p->mydisplay, p->mywindow, optat, +- XA_CARDINAL, 32, PropModeReplace, (char *)(&opaque), 1); ++ XA_CARDINAL, 32, PropModeReplace, (void *)(&opaque), 1); + } + if ((optat = XInternAtom(p->mydisplay, "_NET_WM_WINDOW_OPACITY_LOCKED", False)) != None) { + XChangeProperty(p->mydisplay, p->mywindow, optat, +- XA_CARDINAL, 32, PropModeReplace, (char *)(&opaque), 1); ++ XA_CARDINAL, 32, PropModeReplace, (void *)(&opaque), 1); + } + } diff --git a/graphics/argyllcms/files/patch-spectro_vinflate.c b/graphics/argyllcms/files/patch-spectro_vinflate.c deleted file mode 100644 index 15502529e161..000000000000 --- a/graphics/argyllcms/files/patch-spectro_vinflate.c +++ /dev/null @@ -1,31 +0,0 @@ ---- spectro/vinflate.c.orig 2020-08-19 12:08:33 UTC -+++ spectro/vinflate.c -@@ -92,7 +92,7 @@ int vinflate(void); - */ - - #define WSIZE 0x8000 --unsigned int wp; /* current position in slide */ -+extern unsigned int wp; /* current position in slide */ - uch slide[32768]; - - static int vflush_output(unsigned int w) { -@@ -160,8 +160,8 @@ static ush cpdext[] = { /* Extra bits for dist - the stream. - */ - --ulg bb; /* bit buffer */ --unsigned bk; /* bits in bit buffer */ -+extern ulg bb; /* bit buffer */ -+extern unsigned bk; /* bits in bit buffer */ - - ush vmask_bits[] = { - 0x0000, -@@ -239,7 +239,7 @@ int vdbits = 6; /* bits in base distance look - #define N_MAX 288 /* maximum number of codes in any set */ - - --unsigned hufts; /* track memory usage */ -+extern unsigned hufts; /* track memory usage */ - - /* Given a list of code lengths and a maximum table size, make a set of - tables to decode that set of codes. Return zero on success, one if diff --git a/graphics/argyllcms/files/patch-warnings b/graphics/argyllcms/files/patch-warnings new file mode 100644 index 000000000000..9eb998747503 --- /dev/null +++ b/graphics/argyllcms/files/patch-warnings @@ -0,0 +1,275 @@ +--- render/render.c 2026-02-09 17:25:30.000000000 -0500 ++++ render/render.c 2026-04-25 21:57:54.964993000 -0400 +@@ -317,9 +317,9 @@ + #ifdef RENDER_TIFF + TIFF *wh = NULL; +- uint16 samplesperpixel = 0, bitspersample = 0; +- uint16 extrasamples = 0; /* Extra "alpha" samples */ +- uint16 extrainfo[MXCH2D]; /* Info about extra samples */ +- uint16 photometric = 0; +- uint16 inkset = 0xffff; ++ uint16_t samplesperpixel = 0, bitspersample = 0; ++ uint16_t extrasamples = 0; /* Extra "alpha" samples */ ++ uint16_t extrainfo[MXCH2D]; /* Info about extra samples */ ++ uint16_t photometric = 0; ++ uint16_t inkset = 0xffff; + char *inknames = NULL; + #endif +--- ucmm/ucmm.c 2026-02-09 17:25:31.000000000 -0500 ++++ ucmm/ucmm.c 2026-04-25 23:53:58.581849000 -0400 +@@ -438,5 +438,7 @@ + if (ii > recno) /* Track biggest, so we know what to create next */ + recno = ii; +- if ((pp = jc_get_nth_elem(key, 3)) != NULL && strcmp(pp, mname) == 0 && type == jc_string && strcmp(data, mval) == 0) { ++ if ((pp = jc_get_nth_elem(key, 3)) != NULL && ++ strcmp(pp, mname) == 0 && type == jc_string && ++ strcmp((char *)data, mval) == 0) { + /* Found matching record */ + free(pp); +@@ -472,5 +474,5 @@ + debug2((errout,"jcnf locate/get_key failed with error %d\n",ev)); + } +- if ((xprofile = strdup(data)) == NULL) { ++ if ((xprofile = strdup((char *)data)) == NULL) { + debug2((errout,"jcnf get_key malloc failed\n")); + } +@@ -481,6 +483,6 @@ + sprintf(keyn1, "devices/display/%d/%s", recno, mname); + sprintf(keyn2, "devices/display/%d/ICC_PROFILE", recno); +- if ((ev = jc->set_key(jc, -1, keyn1, jc_string, mval, strlen(mval)+1, NULL)) != jc_ok +- || (ev = jc->set_key(jc, -1, keyn2, jc_string, data_name, strlen(data_name)+1, NULL)) != jc_ok) { ++ if ((ev = jc->set_key(jc, -1, keyn1, jc_string, (unsigned char *)mval, strlen(mval)+1, NULL)) != jc_ok ++ || (ev = jc->set_key(jc, -1, keyn2, jc_string, (unsigned char *)data_name, strlen(data_name)+1, NULL)) != jc_ok) { + debug2((errout,"jcnf set_key failed with error %d\n",ev)); + free(mval); +@@ -515,5 +517,5 @@ + if (strcmp(pp,"ICC_PROFILE") != 0 + || type != jc_string +- || strcmp(data, xprofile) != 0) { ++ || strcmp((char *)data, xprofile) != 0) { + free(pp); + continue; +@@ -698,5 +700,5 @@ + && strcmp(pp, mname) == 0 + && type == jc_string +- && strcmp(data, mval) == 0) { ++ && strcmp((char *)data, mval) == 0) { + /* Found matching record */ + free(pp); +@@ -729,5 +731,5 @@ + return ucmm_access_config; + } +- if ((*pprofile = strdup(data)) == NULL) { ++ if ((*pprofile = strdup((char *)data)) == NULL) { + debug2((errout,"jcnf get_key malloc failed\n")); + jc->del(jc); +@@ -766,5 +768,6 @@ + int recno = -1; + int ix; +- ucmm_error ev = ucmm_ok; ++ ucmm_error uev; ++ jc_error ev; + + if (edid != NULL) +@@ -774,7 +777,7 @@ + + /* Locate the config record containing the config file entry. */ +- if ((ev = ucmm_get_monitor_config(&dprof, &recno, &jc, edid, edid_len, display_name, ++ if ((uev = ucmm_get_monitor_config(&dprof, &recno, &jc, edid, edid_len, display_name, + jc_modify, scope)) != ucmm_ok) { +- return ev; ++ return uev; + } + +@@ -828,5 +831,5 @@ + if (strcmp(pp,"ICC_PROFILE") != 0 + || type != jc_string +- || strcmp(data, dprof) != 0) { ++ || strcmp((char *)data, dprof) != 0) { + free(pp); + continue; +--- xicc/tiffgamut.c 2026-02-09 17:25:22.000000000 -0500 ++++ xicc/tiffgamut.c 2026-04-25 23:59:53.426553000 -0400 +@@ -329,6 +329,8 @@ + case JCS_YCCK: + return "YCCK"; ++ default: ++ snprintf(buf, sizeof(buf) - 1, ++ "Unknown JPEG colorspace %d", cspace); + } +- sprintf(buf,"Unknown JPEG colorspace %d",cspace); + return buf; + } +@@ -384,12 +386,12 @@ + TIFF *rh = NULL; + int x, y, width, height; /* Size of image */ +- uint16 samplesperpixel, bitspersample; +- uint16 pconfig, photometric, pmtc; ++ uint16_t samplesperpixel, bitspersample; ++ uint16_t pconfig, photometric, pmtc; + tdata_t *inbuf; + int inbpix = 0; /* Number of pixels in jpeg in buf */ + void (*cvt)(double *out, double *in) = NULL; /* TIFF conversion function, NULL if none */ + icColorSpaceSignature tcs = 0; /* TIFF colorspace */ +- uint16 extrasamples = 0; /* Extra "alpha" samples */ +- uint16 *extrainfo = NULL; /* Info about extra samples */ ++ uint16_t extrasamples = 0; /* Extra "alpha" samples */ ++ uint16_t *extrainfo = NULL; /* Info about extra samples */ + int sign_mask = 0; /* Handling of encoding sign */ + +--- xicc/tiffgmts.c 2026-02-09 17:25:22.000000000 -0500 ++++ xicc/tiffgmts.c 2026-04-26 00:02:06.008046000 -0400 +@@ -314,13 +314,13 @@ + TIFF *rh = NULL; + int x, y, width, height; /* Size of image */ +- uint16 samplesperpixel, bitspersample; +- uint16 pconfig, photometric, pmtc; +- uint16 resunits; ++ uint16_t samplesperpixel, bitspersample; ++ uint16_t pconfig, photometric, pmtc; ++ uint16_t resunits; + float resx, resy; + tdata_t *inbuf; + void (*cvt)(double *out, double *in); /* TIFF conversion function, NULL if none */ + icColorSpaceSignature tcs; /* TIFF colorspace */ +- uint16 extrasamples; /* Extra "alpha" samples */ +- uint16 *extrainfo; /* Info about extra samples */ ++ uint16_t extrasamples; /* Extra "alpha" samples */ ++ uint16_t *extrainfo; /* Info about extra samples */ + int sign_mask; /* Handling of encoding sign */ + +--- imdi/greytiff.c 2026-02-09 17:25:27.000000000 -0500 ++++ imdi/greytiff.c 2026-04-26 00:04:18.213233000 -0400 +@@ -205,7 +205,7 @@ + TIFF *rh = NULL, *wh = NULL; + int x, y, width, height; /* Size of image */ +- uint16 samplesperpixel, bitspersample; +- uint16 pconfig, photometric, pmtc; +- uint16 resunits; ++ uint16_t samplesperpixel, bitspersample; ++ uint16_t pconfig, photometric, pmtc; ++ uint16_t resunits; + float resx, resy; + tdata_t *inbuf, *outbuf, *checkbuf; +--- imdi/cctiff.c 2026-02-09 17:25:26.000000000 -0500 ++++ imdi/cctiff.c 2026-04-26 00:05:58.493232000 -0400 +@@ -351,5 +351,5 @@ + int + ColorSpaceSignature2TiffPhotometric( +-uint16 tags[10], /* Pointer to return array, up to 10 */ ++uint16_t tags[10], /* Pointer to return array, up to 10 */ + icColorSpaceSignature cspace /* Input ICC colorspace */ + ) { +@@ -969,6 +969,8 @@ + case JCS_YCCK: + return "YCCK"; ++ default: ++ snprintf(buf, sizeof(buf) - 1, ++ "Unknown JPEG colorspace %d", cspace); + } +- sprintf(buf,"Unknown JPEG colorspace %d",cspace); + return buf; + } +@@ -1007,13 +1009,13 @@ + + int x, y, width, height; /* Common size of image */ +- uint16 bitspersample; /* Bits per sample */ +- uint16 resunits; ++ uint16_t bitspersample; /* Bits per sample */ ++ uint16_t resunits; + float resx, resy; +- uint16 pconfig; /* Planar configuration */ ++ uint16_t pconfig; /* Planar configuration */ + +- uint16 rsamplesperpixel, wsamplesperpixel; /* Channels per sample */ +- uint16 rphotometric, wphotometric; /* Photometrics */ +- uint16 rextrasamples, wextrasamples; /* Extra "alpha" samples */ +- uint16 *rextrainfo, wextrainfo[MAX_CHAN]; /* Info about extra samples */ ++ uint16_t rsamplesperpixel, wsamplesperpixel; /* Channels per sample */ ++ uint16_t rphotometric, wphotometric; /* Photometrics */ ++ uint16_t rextrasamples, wextrasamples; /* Extra "alpha" samples */ ++ uint16_t *rextrainfo, wextrainfo[MAX_CHAN]; /* Info about extra samples */ + char *rdesc = NULL; /* Existing description */ + char *ddesc = "[ Color corrected by ArgyllCMS ]"; /* Default description */ +@@ -1691,5 +1693,5 @@ + { + int no_pmtc; /* Number of possible photometrics */ +- uint16 pmtc[10]; /* Photometrics of output file */ ++ uint16_t pmtc[10]; /* Photometrics of output file */ + if ((no_pmtc = ColorSpaceSignature2TiffPhotometric(pmtc, + last_colorspace)) == 0) +--- target/filmtarg.c 2026-02-09 17:25:27.000000000 -0500 ++++ target/filmtarg.c 2026-04-26 00:11:20.962318000 -0400 +@@ -194,7 +194,5 @@ + + int +-main(argc,argv) +-int argc; +-char *argv[]; ++main(int argc, char *argv[]) + { + int fa,nfa; /* current argument we're looking at */ +--- target/ifarp.c 2026-02-09 17:25:27.000000000 -0500 ++++ target/ifarp.c 2026-04-26 00:12:58.354474000 -0400 +@@ -831,7 +831,5 @@ + + int +-main(argc,argv) +-int argc; +-char *argv[]; ++main(int argc, char *argv[]) + { + int npoints = 500; +--- target/ofps.c 2026-02-09 17:25:27.000000000 -0500 ++++ target/ofps.c 2026-04-26 00:13:44.527466000 -0400 +@@ -8526,7 +8526,5 @@ + + int +-main(argc,argv) +-int argc; +-char *argv[]; ++main(int argc, char *argv[]) + { + int npoints = 55; +--- target/simplat.c 2026-02-09 17:25:27.000000000 -0500 ++++ target/simplat.c 2026-04-26 00:15:13.359774000 -0400 +@@ -911,7 +911,5 @@ + + int +-main(argc,argv) +-int argc; +-char *argv[]; ++main(int argc, char *argv[]) + { + int npoints = 50; +--- target/simdlat.c 2026-02-09 17:25:27.000000000 -0500 ++++ target/simdlat.c 2026-04-26 00:16:29.160795000 -0400 +@@ -879,7 +879,5 @@ + + int +-main(argc,argv) +-int argc; +-char *argv[]; ++main(int argc, char *argv[]) + { + int npoints = 50; +--- scanin/scanin.c 2026-02-09 17:25:28.000000000 -0500 ++++ scanin/scanin.c 2026-04-26 00:17:29.075659000 -0400 +@@ -168,11 +168,11 @@ + + TIFF *rh = NULL, *wh = NULL; +- uint16 depth, bps; /* Useful depth, bits per sample */ +- uint16 tdepth; /* Total depth including alpha */ +- uint16 pconfig, photometric; +- uint16 rextrasamples; /* Extra "alpha" samples */ +- uint16 *rextrainfo; /* Info about extra samples */ ++ uint16_t depth, bps; /* Useful depth, bits per sample */ ++ uint16_t tdepth; /* Total depth including alpha */ ++ uint16_t pconfig, photometric; ++ uint16_t rextrasamples; /* Extra "alpha" samples */ ++ uint16_t *rextrainfo; /* Info about extra samples */ + int gotres = 0; +- uint16 resunits; ++ uint16_t resunits; + float resx, resy; + diff --git a/graphics/argyllcms/files/patch-yajl b/graphics/argyllcms/files/patch-yajl new file mode 100644 index 000000000000..d9eba3f4464f --- /dev/null +++ b/graphics/argyllcms/files/patch-yajl @@ -0,0 +1,160 @@ +Build against the stock yajl instead of the bundled copy. + + -mi +--- ccast/ccast.c 2026-02-09 17:25:54.000000000 -0500 ++++ ccast/ccast.c 2026-04-25 23:11:46.141616000 -0400 +@@ -30,8 +30,12 @@ + #include "conv.h" + #include "base64.h" +-#include "yajl.h" ++#include + #include "ccpacket.h" + #include "ccmes.h" + #include "ccast.h" ++ ++#define yajl_tree_get_first(parent, key, type) \ ++ yajl_tree_get((parent), (const char *[]){ (key), NULL }, (type)) ++#define YAJL_GET_STRINGDUP(v) (YAJL_IS_STRING(v) ? strdup((v)->u.string) : NULL) + + #undef DEBUG /* [und] */ +--- ccast/ccmes.c 2026-02-09 17:25:54.000000000 -0500 ++++ ccast/ccmes.c 2026-04-25 23:08:23.822112000 -0400 +@@ -37,5 +37,5 @@ + #endif + +-#include "yajl.h" ++#include + #include "conv.h" + #include "ccpacket.h" +@@ -45,4 +45,8 @@ + #undef LOWVERBTRACE /* [und] Low verboseness message trace */ + #undef DEBUG /* [und] Full message trace + debug */ ++ ++ ++#define yajl_tree_get_first(parent, key, type) \ ++ yajl_tree_get((parent), (const char *[]){ (key), NULL }, (type)) + + /* ------------------------------------------------------------------- */ +--- ccast/dpat.c 2026-02-09 17:25:54.000000000 -0500 ++++ ccast/dpat.c 2026-04-25 23:15:25.315648000 -0400 +@@ -48,8 +48,6 @@ + #include "conv.h" + #include "base64.h" +-#include "yajl.h" + #include "ccmdns.h" + #include "ccpacket.h" +-#include "ccmes.h" + #include "ccast.h" + +--- jcnf/jcnf.c 2026-02-09 17:25:31.000000000 -0500 ++++ jcnf/jcnf.c 2026-04-25 23:30:25.626608000 -0400 +@@ -48,7 +48,7 @@ + #include + +-#include "yajl_common.h" +-#include "yajl_gen.h" +-#include "yajl_parse.h" ++#include ++#include ++#include + + #include "jcnf.h" +@@ -466,5 +466,5 @@ + } + +-static int jcnf_yajl_integer(void *ctx, longlong integerVal) { ++static int jcnf_yajl_integer(void *ctx, long long integerVal) { + jcnf *p = (jcnf *)ctx; + char *t1; +@@ -714,17 +714,15 @@ + + static yajl_callbacks callbacks = { +- jcnf_yajl_null, +- jcnf_yajl_boolean, +- jcnf_yajl_integer, +- jcnf_yajl_double, +- NULL, /* number */ +- jcnf_yajl_string, +- jcnf_yajl_c_comment, +- jcnf_yajl_cpp_comment, +- jcnf_yajl_start_map, +- jcnf_yajl_map_key, +- jcnf_yajl_end_map, +- jcnf_yajl_start_array, +- jcnf_yajl_end_array ++ .yajl_null = jcnf_yajl_null, ++ .yajl_boolean = jcnf_yajl_boolean, ++ .yajl_integer = jcnf_yajl_integer, ++ .yajl_double = jcnf_yajl_double, ++ .yajl_number = NULL, ++ .yajl_string = jcnf_yajl_string, ++ .yajl_start_map = jcnf_yajl_start_map, ++ .yajl_map_key = jcnf_yajl_map_key, ++ .yajl_end_map = jcnf_yajl_end_map, ++ .yajl_start_array = jcnf_yajl_start_array, ++ .yajl_end_array = jcnf_yajl_end_array + }; + +@@ -960,5 +958,5 @@ + for (cc = dc; *cc != '\000' && *cc != '/'; cc++) + ; +- yajl_gen_string(g, dc, cc-dc); ++ yajl_gen_string(g, (const unsigned char *)dc, cc-dc); + if (*cc != '\000') + dc = cc + 1; +@@ -986,5 +984,5 @@ + + case jc_string: +- yajl_gen_string(g, (char *)p->keys[i]->data, p->keys[i]->dataSize-1); ++ yajl_gen_string(g, (const unsigned char *)p->keys[i]->data, p->keys[i]->dataSize-1); + break; + +@@ -995,10 +993,4 @@ + } + +- if (p->keys[i]->cpp_comment != NULL) { +- yajl_gen_cpp_comment(g, p->keys[i]->cpp_comment, strlen(p->keys[i]->cpp_comment)); +- } +- if (p->keys[i]->c_comment != NULL) { +- yajl_gen_c_comment(g, p->keys[i]->c_comment, strlen(p->keys[i]->c_comment), 1); +- } + + #ifdef NEVER +--- spectro/Jamfile 2026-02-09 17:25:23.000000000 -0500 ++++ spectro/Jamfile 2026-04-26 00:56:23.196919000 -0400 +@@ -69,5 +69,5 @@ + # Micro Unix CMM for handling monitor profile association + CMMHDRS = ../ucmm ; +- CMMLIBS = ../ucmm/libucmm ../jcnf/libjcnf ../yajl/libyajl ; ++ CMMLIBS = ../ucmm/libucmm ../jcnf/libjcnf ; + } + +@@ -172,5 +174,5 @@ + ../rspl/librspl ../cgats/libcgats + ../icc/libicc ../plot/libplot ../plot/libvrml +- ../ccast/libccast $(SSLLIB) ../yajl/libyajl ++ ../ccast/libccast $(SSLLIB) + $(TIFFLIB) $(JPEGLIB) $(PNGLIB) $(ZLIB) + ../numlib/libui libconv ../numlib/libnum +@@ -189,4 +191,5 @@ + + LINKFLAGS += $(GUILINKFLAGS) ; ++LINKFLAGS += -lyajl ; + + # General target reader program +--- jcnf/Jamfile 2026-02-09 17:25:31.000000000 -0500 ++++ jcnf/Jamfile 2026-04-26 01:05:42.007296000 -0400 +@@ -17,11 +17,10 @@ + #InstallLib $(DESTDIR)$(PREFIX)/lib : $(Libraries) ; + +-HDRS = ../yajl ; +- + # config parser based on yajl + Library libjcnf : jcnf.c ; + + # Link all utilities here with libicc +-LINKLIBS = libjcnf ../yajl/libyajl ../numlib/libnum ; ++LINKLIBS = libjcnf ../numlib/libnum ; ++LINKFLAGS += -lyajl ; + + # All utils are made from a single source file diff --git a/graphics/argyllcms/pkg-plist b/graphics/argyllcms/pkg-plist index d8c413f05842..18e8879535e4 100644 --- a/graphics/argyllcms/pkg-plist +++ b/graphics/argyllcms/pkg-plist @@ -1,118 +1,136 @@ bin/applycal bin/average bin/cb2ti3 bin/cctiff bin/ccxxmake bin/chartread bin/collink bin/colprof bin/colverify +bin/cxf2ti3 bin/dispcal bin/dispread bin/dispwin bin/extracticc bin/extractttag bin/fakeCMY bin/fakeread bin/greytiff bin/iccdump bin/iccgamut bin/icclu +bin/iccvcgt bin/illumread bin/invprofcheck bin/kodak2ti3 bin/ls2ti3 bin/mppcheck bin/mpplu bin/mppprof bin/oeminst bin/printcal bin/printtarg bin/profcheck bin/refine bin/revfix bin/scanin bin/spec2cie bin/specplot bin/splitti3 bin/spotread bin/synthcal bin/synthread bin/targen bin/tiffgamut bin/timage bin/txt2ti3 bin/viewgam bin/xicclu share/argyll/License.txt share/argyll/ref/3dap5k.sp +share/argyll/ref/ACES_P3.icm share/argyll/ref/CIE_C.sp share/argyll/ref/CMP_DT_003.cht +share/argyll/ref/CMP_DT_mini.cht share/argyll/ref/CMP_Digital_Target-4.cht share/argyll/ref/CMP_Digital_Target-4.cie share/argyll/ref/CMP_Digital_Target-4.ti2 share/argyll/ref/CMP_Digital_Target-7.cht +share/argyll/ref/CMP_Digital_Target-2019.cht +share/argyll/ref/CMP_Digital_Target_Studio.cht share/argyll/ref/ClayRGB1998.icm share/argyll/ref/ColorChecker.cht share/argyll/ref/ColorChecker.cie share/argyll/ref/ColorChecker.ti2 share/argyll/ref/ColorCheckerDC.cht share/argyll/ref/ColorCheckerDC.ti2 +share/argyll/ref/ColorCheckerHalfPassport.cht +share/argyll/ref/ColorCheckerHalfPassport.cie +share/argyll/ref/ColorCheckerHalfPassport.ti2 share/argyll/ref/ColorCheckerPassport.cht share/argyll/ref/ColorCheckerPassport.cie +share/argyll/ref/ColorCheckerPassport.ti2 share/argyll/ref/ColorCheckerSG.cht share/argyll/ref/ColorCheckerSG.ti2 share/argyll/ref/D50_0.0.sp share/argyll/ref/D50_0.1.sp share/argyll/ref/D50_0.3.sp share/argyll/ref/D50_0.5.sp share/argyll/ref/D50_0.7.sp share/argyll/ref/D50_1.0.sp share/argyll/ref/D50_1.2.sp share/argyll/ref/D50_1.5.sp share/argyll/ref/D50_1.7.sp share/argyll/ref/D50_2.0.sp share/argyll/ref/D50_2.5.sp share/argyll/ref/D50_3.0.sp +share/argyll/ref/DisplayP3.icm share/argyll/ref/EBU3213_PAL.icm share/argyll/ref/ECI2002.ti2 share/argyll/ref/ECI2002R.ti2 share/argyll/ref/F1.sp share/argyll/ref/F5.sp share/argyll/ref/F8.sp share/argyll/ref/FograStrip2.ti1 share/argyll/ref/FograStrip2_2.ti2 share/argyll/ref/FograStrip3.ti1 share/argyll/ref/FograStrip3_3.ti2 share/argyll/ref/GTIPlus.sp share/argyll/ref/Hutchcolor.cht +share/argyll/ref/ISO12641_2_1.cht +share/argyll/ref/ISO12641_2_3_1.cht +share/argyll/ref/ISO12641_2_3_2.cht +share/argyll/ref/ISO12641_2_3_3.cht share/argyll/ref/LaserSoftDCPro.cht +share/argyll/ref/MLG.cht +share/argyll/ref/MLG.cie share/argyll/ref/Office.sp share/argyll/ref/ProPhoto.icm share/argyll/ref/ProPhotoLin.icm share/argyll/ref/QPcard_201.cht share/argyll/ref/QPcard_201.cie share/argyll/ref/QPcard_202.cht share/argyll/ref/QPcard_202.cie share/argyll/ref/Rec2020.icm share/argyll/ref/Rec709.icm share/argyll/ref/RefMediumGamut.gam share/argyll/ref/SMPTE431_P3.icm share/argyll/ref/SMPTE_RP145_NTSC.icm share/argyll/ref/SOtele.sp share/argyll/ref/SpyderChecker.cht share/argyll/ref/SpyderChecker.cie share/argyll/ref/SpyderChecker24.cht share/argyll/ref/SpyderChecker24.cie share/argyll/ref/Trulux.sp share/argyll/ref/TruluxPlus.sp share/argyll/ref/ccxx.ti1 share/argyll/ref/example.sp share/argyll/ref/example121.sp share/argyll/ref/i1_RGB_Scan_1.4.cht share/argyll/ref/i1_RGB_Scan_1.4.ti2 share/argyll/ref/it8.cht +share/argyll/ref/it8Wolf.cht share/argyll/ref/lab2lab.icm share/argyll/ref/linear.cal share/argyll/ref/sRGB.icm share/argyll/ref/strange.cal