From 393f2702f7992183fdb50b562395c1d57e6134b8 Mon Sep 17 00:00:00 2001
From: fritzkink <96341974+fritzkink@users.noreply.github.com>
Date: Sun, 12 Nov 2023 20:44:49 +0100
Subject: [PATCH] cairo - update to version 1.18.0

---
 /dev/null                                              |   15 --
 components/library/cairo/cairo.p5m                     |  141 ++------------------
 components/library/cairo/patches/04-WIFEXITED.patch    |   27 +++
 components/library/cairo/Makefile                      |   44 +----
 components/library/cairo/manifests/sample-manifest.p5m |  128 +----------------
 components/library/cairo/patches/02-alloca.patch       |   10 +
 components/library/cairo/pkg5                          |    5 
 components/library/cairo/patches/05-termios.patch      |   10 +
 8 files changed, 90 insertions(+), 290 deletions(-)

diff --git a/components/library/cairo/Makefile b/components/library/cairo/Makefile
index c9129d0..c2cb7ca 100644
--- a/components/library/cairo/Makefile
+++ b/components/library/cairo/Makefile
@@ -12,18 +12,18 @@
 #
 # Copyright 2016 Alexander Pyhalov
 # Copyright 2019 Michal Nowak
+# Copyright 2023 Friedrich Kink
 #
 
-BUILD_BITS= 32_and_64
+BUILD_STYLE= meson
 include ../../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=         cairo
-COMPONENT_VERSION=      1.16.0
-COMPONENT_REVISION=     4
+COMPONENT_VERSION=      1.18.0
 COMPONENT_SUMMARY=      Vector graphics library
 COMPONENT_SRC=          $(COMPONENT_NAME)-$(COMPONENT_VERSION)
 COMPONENT_ARCHIVE=      $(COMPONENT_SRC).tar.xz
-COMPONENT_ARCHIVE_HASH= sha256:5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331
+COMPONENT_ARCHIVE_HASH= sha256:243a0736b978a33dee29f9cca7521733b78a65b5418206fef7bd1c3d4cf10b64
 COMPONENT_ARCHIVE_URL=  https://cairographics.org/releases/$(COMPONENT_ARCHIVE)
 COMPONENT_PROJECT_URL=  https://cairographics.org/
 COMPONENT_FMRI=         library/desktop/cairo
@@ -34,34 +34,13 @@
 include $(WS_MAKE_RULES)/common.mk
 
 PATH=$(PATH.gnu)
+# to avoid the following error
+# ld: fatal: recording name conflict: file 'src/libcairo.so.2.11800.0' and file '/usr/lib/amd64/libcairo.so' provide identical dependency names: libcairo.so.2
+# ld: fatal: file processing errors. No output written to test/any2ppm
+COMPONENT_POST_CONFIGURE_ACTION = $(GSED) -i -e '/^ LINK_ARGS/s:/usr/lib/amd64/libcairo.so :$(@D)/src/libcairo.so :'  $(@D)/build.ninja
+COMPONENT_BUILD_ARGS= -j1
 
-COMPONENT_PREP_ACTION =	( cd $(@D) && PATH=$(PATH) libtoolize --force --copy && \
-                                      aclocal  -I build && \
-                                      gtkdocize &&\
-                                      autoheader &&\
-                                      automake -a -f -c --gnu &&\
-                                      autoconf )
-
-COMPONENT_PRE_CONFIGURE_ACTION = ( cp -a $(SOURCE_DIR)/* $(@D))
-
-CONFIGURE_SCRIPT = $(@D)/configure
-
-CFLAGS += -D_POSIX_PTHREAD_SEMANTICS
-
-CONFIGURE_OPTIONS += --disable-static
-CONFIGURE_OPTIONS += --enable-xcb-shm=no
-CONFIGURE_OPTIONS += --enable-gl=yes
-CONFIGURE_OPTIONS += --enable-xlib-xcb
-CONFIGURE_OPTIONS += --enable-xml
-CONFIGURE_OPTIONS += --enable-test-surfaces
-
-# Needed for "gmake test" to work successfully.
-# If SHELLOPTS is exported (as it is by the userland makefiles),
-# then all shell options get exported to child invocations of bash,
-# which results in test failures due to nounset and xtrace being
-# set unexpectedly, and errors such as "$1: unbound variable" and
-# diffs failing due to script tracing in output files.
-unexport SHELLOPTS
+LDFLAGS += -lsocket
 
 # Auto-generated dependencies
 REQUIRED_PACKAGES += image/library/libpng16
@@ -69,10 +48,11 @@
 REQUIRED_PACKAGES += library/graphics/pixman
 REQUIRED_PACKAGES += library/lzo
 REQUIRED_PACKAGES += library/zlib
-REQUIRED_PACKAGES += shell/ksh93
 REQUIRED_PACKAGES += system/library
 REQUIRED_PACKAGES += system/library/fontconfig
 REQUIRED_PACKAGES += system/library/freetype-2
 REQUIRED_PACKAGES += system/library/math
 REQUIRED_PACKAGES += x11/library/libx11
 REQUIRED_PACKAGES += x11/library/libxcb
+REQUIRED_PACKAGES += x11/library/libxext
+REQUIRED_PACKAGES += x11/library/libxrender
diff --git a/components/library/cairo/cairo.p5m b/components/library/cairo/cairo.p5m
index f69cedb..ba6a148 100644
--- a/components/library/cairo/cairo.p5m
+++ b/components/library/cairo/cairo.p5m
@@ -12,9 +12,11 @@
 #
 # Copyright 2015 Alexander Pyhalov
 # Copyright 2019 Michal Nowak
+# Copyright 2023 Friedrich Kink
 #
 
 set name=pkg.fmri value=pkg:/$(COMPONENT_FMRI)@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.human-version value=$(HUMAN_VERSION)
 set name=pkg.summary value="$(COMPONENT_SUMMARY)"
 set name=info.classification value="$(COMPONENT_CLASSIFICATION)"
 set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
@@ -23,158 +25,45 @@
 
 license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
 
-depend fmri=service/opengl/ogl-select type=require
-
-<transform file -> add pkg.depend.bypass-generate libGL\.so\.1>
-<transform file -> add pkg.depend.bypass-generate libEGL\.so\.1>
-<transform file path=usr/share/gtk-doc/.* ->  default facet.doc true>
-<transform file path=usr/share/gtk-doc/html/.* ->  default facet.doc.html true>
-
-file path=usr/bin/$(MACH64)/cairo-trace
-file path=usr/bin/cairo-trace
 file path=usr/include/cairo/cairo-deprecated.h
 file path=usr/include/cairo/cairo-features.h
 file path=usr/include/cairo/cairo-ft.h
-file path=usr/include/cairo/cairo-gl.h
 file path=usr/include/cairo/cairo-gobject.h
 file path=usr/include/cairo/cairo-pdf.h
 file path=usr/include/cairo/cairo-ps.h
 file path=usr/include/cairo/cairo-script-interpreter.h
 file path=usr/include/cairo/cairo-script.h
 file path=usr/include/cairo/cairo-svg.h
+file path=usr/include/cairo/cairo-tee.h
 file path=usr/include/cairo/cairo-version.h
 file path=usr/include/cairo/cairo-xcb.h
 file path=usr/include/cairo/cairo-xlib-xrender.h
 file path=usr/include/cairo/cairo-xlib.h
-file path=usr/include/cairo/cairo-xml.h
 file path=usr/include/cairo/cairo.h
-file path=usr/lib/$(MACH64)/cairo/libcairo-trace.so
-link path=usr/lib/$(MACH64)/cairo/libcairo-trace.so.0 target=libcairo-trace.so
-link path=usr/lib/$(MACH64)/cairo/libcairo-trace.so.0.0.0 target=libcairo-trace.so
-link path=usr/lib/$(MACH64)/libcairo-gobject.so \
-    target=libcairo-gobject.so.2.11600.0
+link path=usr/lib/$(MACH64)/libcairo-gobject.so target=libcairo-gobject.so.2
 link path=usr/lib/$(MACH64)/libcairo-gobject.so.2 \
-    target=libcairo-gobject.so.2.11600.0
-file path=usr/lib/$(MACH64)/libcairo-gobject.so.2.11600.0
+    target=libcairo-gobject.so.2.11800.0
+file path=usr/lib/$(MACH64)/libcairo-gobject.so.2.11800.0
 link path=usr/lib/$(MACH64)/libcairo-script-interpreter.so \
-    target=libcairo-script-interpreter.so.2.11600.0
+    target=libcairo-script-interpreter.so.2
 link path=usr/lib/$(MACH64)/libcairo-script-interpreter.so.2 \
-    target=libcairo-script-interpreter.so.2.11600.0
-file path=usr/lib/$(MACH64)/libcairo-script-interpreter.so.2.11600.0
-link path=usr/lib/$(MACH64)/libcairo.so target=libcairo.so.2.11600.0
-link path=usr/lib/$(MACH64)/libcairo.so.2 target=libcairo.so.2.11600.0
-file path=usr/lib/$(MACH64)/libcairo.so.2.11600.0
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-egl.pc
+    target=libcairo-script-interpreter.so.2.11800.0
+file path=usr/lib/$(MACH64)/libcairo-script-interpreter.so.2.11800.0
+link path=usr/lib/$(MACH64)/libcairo.so target=libcairo.so.2
+link path=usr/lib/$(MACH64)/libcairo.so.2 target=libcairo.so.2.11800.0
+file path=usr/lib/$(MACH64)/libcairo.so.2.11800.0
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-fc.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-ft.pc
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-gl.pc
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-glx.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-gobject.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-pdf.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-png.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-ps.pc
+file path=usr/lib/$(MACH64)/pkgconfig/cairo-script-interpreter.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-script.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-svg.pc
+file path=usr/lib/$(MACH64)/pkgconfig/cairo-tee.pc
+file path=usr/lib/$(MACH64)/pkgconfig/cairo-xcb-shm.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-xcb.pc
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-xlib-xcb.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-xlib-xrender.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-xlib.pc
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-xml.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo.pc
-file path=usr/lib/cairo/libcairo-trace.so
-link path=usr/lib/cairo/libcairo-trace.so.0 target=libcairo-trace.so
-link path=usr/lib/cairo/libcairo-trace.so.0.0.0 target=libcairo-trace.so
-link path=usr/lib/libcairo-gobject.so target=libcairo-gobject.so.2.11600.0
-link path=usr/lib/libcairo-gobject.so.2 target=libcairo-gobject.so.2.11600.0
-file path=usr/lib/libcairo-gobject.so.2.11600.0
-link path=usr/lib/libcairo-script-interpreter.so \
-    target=libcairo-script-interpreter.so.2.11600.0
-link path=usr/lib/libcairo-script-interpreter.so.2 \
-    target=libcairo-script-interpreter.so.2.11600.0
-file path=usr/lib/libcairo-script-interpreter.so.2.11600.0
-link path=usr/lib/libcairo.so target=libcairo.so.2.11600.0
-link path=usr/lib/libcairo.so.2 target=libcairo.so.2.11600.0
-file path=usr/lib/libcairo.so.2.11600.0
-file path=usr/lib/pkgconfig/cairo-egl.pc
-file path=usr/lib/pkgconfig/cairo-fc.pc
-file path=usr/lib/pkgconfig/cairo-ft.pc
-file path=usr/lib/pkgconfig/cairo-gl.pc
-file path=usr/lib/pkgconfig/cairo-glx.pc
-file path=usr/lib/pkgconfig/cairo-gobject.pc
-file path=usr/lib/pkgconfig/cairo-pdf.pc
-file path=usr/lib/pkgconfig/cairo-png.pc
-file path=usr/lib/pkgconfig/cairo-ps.pc
-file path=usr/lib/pkgconfig/cairo-script.pc
-file path=usr/lib/pkgconfig/cairo-svg.pc
-file path=usr/lib/pkgconfig/cairo-xcb.pc
-file path=usr/lib/pkgconfig/cairo-xlib-xcb.pc
-file path=usr/lib/pkgconfig/cairo-xlib-xrender.pc
-file path=usr/lib/pkgconfig/cairo-xlib.pc
-file path=usr/lib/pkgconfig/cairo-xml.pc
-file path=usr/lib/pkgconfig/cairo.pc
-file path=usr/share/gtk-doc/html/cairo/bindings-errors.html
-file path=usr/share/gtk-doc/html/cairo/bindings-fonts.html
-file path=usr/share/gtk-doc/html/cairo/bindings-memory.html
-file path=usr/share/gtk-doc/html/cairo/bindings-overloading.html
-file path=usr/share/gtk-doc/html/cairo/bindings-path.html
-file path=usr/share/gtk-doc/html/cairo/bindings-patterns.html
-file path=usr/share/gtk-doc/html/cairo/bindings-return-values.html
-file path=usr/share/gtk-doc/html/cairo/bindings-streams.html
-file path=usr/share/gtk-doc/html/cairo/bindings-surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Error-handling.html
-file path=usr/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-PNG-Support.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Paths.html
-file path=usr/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Quartz-(CGFont)-Fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Quartz-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Raster-Sources.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Recording-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Regions.html
-file path=usr/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Script-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Tags-and-Links.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Transformations.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Types.html
-file path=usr/share/gtk-doc/html/cairo/cairo-User-Fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Version-Information.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-XCB-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-XLib-XRender-Backend.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-device-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-matrix-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-drawing.html
-file path=usr/share/gtk-doc/html/cairo/cairo-fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-support.html
-file path=usr/share/gtk-doc/html/cairo/cairo-surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-text.html
-file path=usr/share/gtk-doc/html/cairo/cairo.devhelp2
-file path=usr/share/gtk-doc/html/cairo/home.png
-file path=usr/share/gtk-doc/html/cairo/index-1.10.html
-file path=usr/share/gtk-doc/html/cairo/index-1.12.html
-file path=usr/share/gtk-doc/html/cairo/index-1.14.html
-file path=usr/share/gtk-doc/html/cairo/index-1.16.html
-file path=usr/share/gtk-doc/html/cairo/index-1.2.html
-file path=usr/share/gtk-doc/html/cairo/index-1.4.html
-file path=usr/share/gtk-doc/html/cairo/index-1.6.html
-file path=usr/share/gtk-doc/html/cairo/index-1.8.html
-file path=usr/share/gtk-doc/html/cairo/index-all.html
-file path=usr/share/gtk-doc/html/cairo/index.html
-file path=usr/share/gtk-doc/html/cairo/language-bindings.html
-file path=usr/share/gtk-doc/html/cairo/left-insensitive.png
-file path=usr/share/gtk-doc/html/cairo/left.png
-file path=usr/share/gtk-doc/html/cairo/right-insensitive.png
-file path=usr/share/gtk-doc/html/cairo/right.png
-file path=usr/share/gtk-doc/html/cairo/style.css
-file path=usr/share/gtk-doc/html/cairo/up-insensitive.png
-file path=usr/share/gtk-doc/html/cairo/up.png
diff --git a/components/library/cairo/manifests/sample-manifest.p5m b/components/library/cairo/manifests/sample-manifest.p5m
index 5db0bcd..c0d9094 100644
--- a/components/library/cairo/manifests/sample-manifest.p5m
+++ b/components/library/cairo/manifests/sample-manifest.p5m
@@ -23,147 +23,45 @@
 
 license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'
 
-file path=usr/bin/$(MACH64)/cairo-trace
-file path=usr/bin/cairo-trace
 file path=usr/include/cairo/cairo-deprecated.h
 file path=usr/include/cairo/cairo-features.h
 file path=usr/include/cairo/cairo-ft.h
-file path=usr/include/cairo/cairo-gl.h
 file path=usr/include/cairo/cairo-gobject.h
 file path=usr/include/cairo/cairo-pdf.h
 file path=usr/include/cairo/cairo-ps.h
 file path=usr/include/cairo/cairo-script-interpreter.h
 file path=usr/include/cairo/cairo-script.h
 file path=usr/include/cairo/cairo-svg.h
+file path=usr/include/cairo/cairo-tee.h
 file path=usr/include/cairo/cairo-version.h
 file path=usr/include/cairo/cairo-xcb.h
 file path=usr/include/cairo/cairo-xlib-xrender.h
 file path=usr/include/cairo/cairo-xlib.h
-file path=usr/include/cairo/cairo-xml.h
 file path=usr/include/cairo/cairo.h
-file path=usr/lib/$(MACH64)/cairo/libcairo-trace.so
-link path=usr/lib/$(MACH64)/libcairo-gobject.so \
-    target=libcairo-gobject.so.2.11600.0
+link path=usr/lib/$(MACH64)/libcairo-gobject.so target=libcairo-gobject.so.2
 link path=usr/lib/$(MACH64)/libcairo-gobject.so.2 \
-    target=libcairo-gobject.so.2.11600.0
-file path=usr/lib/$(MACH64)/libcairo-gobject.so.2.11600.0
+    target=libcairo-gobject.so.2.11800.0
+file path=usr/lib/$(MACH64)/libcairo-gobject.so.2.11800.0
 link path=usr/lib/$(MACH64)/libcairo-script-interpreter.so \
-    target=libcairo-script-interpreter.so.2.11600.0
+    target=libcairo-script-interpreter.so.2
 link path=usr/lib/$(MACH64)/libcairo-script-interpreter.so.2 \
-    target=libcairo-script-interpreter.so.2.11600.0
-file path=usr/lib/$(MACH64)/libcairo-script-interpreter.so.2.11600.0
-link path=usr/lib/$(MACH64)/libcairo.so target=libcairo.so.2.11600.0
-link path=usr/lib/$(MACH64)/libcairo.so.2 target=libcairo.so.2.11600.0
-file path=usr/lib/$(MACH64)/libcairo.so.2.11600.0
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-egl.pc
+    target=libcairo-script-interpreter.so.2.11800.0
+file path=usr/lib/$(MACH64)/libcairo-script-interpreter.so.2.11800.0
+link path=usr/lib/$(MACH64)/libcairo.so target=libcairo.so.2
+link path=usr/lib/$(MACH64)/libcairo.so.2 target=libcairo.so.2.11800.0
+file path=usr/lib/$(MACH64)/libcairo.so.2.11800.0
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-fc.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-ft.pc
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-gl.pc
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-glx.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-gobject.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-pdf.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-png.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-ps.pc
+file path=usr/lib/$(MACH64)/pkgconfig/cairo-script-interpreter.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-script.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-svg.pc
+file path=usr/lib/$(MACH64)/pkgconfig/cairo-tee.pc
+file path=usr/lib/$(MACH64)/pkgconfig/cairo-xcb-shm.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-xcb.pc
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-xlib-xcb.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-xlib-xrender.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo-xlib.pc
-file path=usr/lib/$(MACH64)/pkgconfig/cairo-xml.pc
 file path=usr/lib/$(MACH64)/pkgconfig/cairo.pc
-file path=usr/lib/cairo/libcairo-trace.so
-link path=usr/lib/libcairo-gobject.so target=libcairo-gobject.so.2.11600.0
-link path=usr/lib/libcairo-gobject.so.2 target=libcairo-gobject.so.2.11600.0
-file path=usr/lib/libcairo-gobject.so.2.11600.0
-link path=usr/lib/libcairo-script-interpreter.so \
-    target=libcairo-script-interpreter.so.2.11600.0
-link path=usr/lib/libcairo-script-interpreter.so.2 \
-    target=libcairo-script-interpreter.so.2.11600.0
-file path=usr/lib/libcairo-script-interpreter.so.2.11600.0
-link path=usr/lib/libcairo.so target=libcairo.so.2.11600.0
-link path=usr/lib/libcairo.so.2 target=libcairo.so.2.11600.0
-file path=usr/lib/libcairo.so.2.11600.0
-file path=usr/lib/pkgconfig/cairo-egl.pc
-file path=usr/lib/pkgconfig/cairo-fc.pc
-file path=usr/lib/pkgconfig/cairo-ft.pc
-file path=usr/lib/pkgconfig/cairo-gl.pc
-file path=usr/lib/pkgconfig/cairo-glx.pc
-file path=usr/lib/pkgconfig/cairo-gobject.pc
-file path=usr/lib/pkgconfig/cairo-pdf.pc
-file path=usr/lib/pkgconfig/cairo-png.pc
-file path=usr/lib/pkgconfig/cairo-ps.pc
-file path=usr/lib/pkgconfig/cairo-script.pc
-file path=usr/lib/pkgconfig/cairo-svg.pc
-file path=usr/lib/pkgconfig/cairo-xcb.pc
-file path=usr/lib/pkgconfig/cairo-xlib-xcb.pc
-file path=usr/lib/pkgconfig/cairo-xlib-xrender.pc
-file path=usr/lib/pkgconfig/cairo-xlib.pc
-file path=usr/lib/pkgconfig/cairo-xml.pc
-file path=usr/lib/pkgconfig/cairo.pc
-file path=usr/share/gtk-doc/html/cairo/bindings-errors.html
-file path=usr/share/gtk-doc/html/cairo/bindings-fonts.html
-file path=usr/share/gtk-doc/html/cairo/bindings-memory.html
-file path=usr/share/gtk-doc/html/cairo/bindings-overloading.html
-file path=usr/share/gtk-doc/html/cairo/bindings-path.html
-file path=usr/share/gtk-doc/html/cairo/bindings-patterns.html
-file path=usr/share/gtk-doc/html/cairo/bindings-return-values.html
-file path=usr/share/gtk-doc/html/cairo/bindings-streams.html
-file path=usr/share/gtk-doc/html/cairo/bindings-surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Error-handling.html
-file path=usr/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-PNG-Support.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Paths.html
-file path=usr/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Quartz-(CGFont)-Fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Quartz-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Raster-Sources.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Recording-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Regions.html
-file path=usr/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Script-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Tags-and-Links.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Transformations.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Types.html
-file path=usr/share/gtk-doc/html/cairo/cairo-User-Fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Version-Information.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-XCB-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-XLib-XRender-Backend.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-device-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-matrix-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-cairo-t.html
-file path=usr/share/gtk-doc/html/cairo/cairo-drawing.html
-file path=usr/share/gtk-doc/html/cairo/cairo-fonts.html
-file path=usr/share/gtk-doc/html/cairo/cairo-support.html
-file path=usr/share/gtk-doc/html/cairo/cairo-surfaces.html
-file path=usr/share/gtk-doc/html/cairo/cairo-text.html
-file path=usr/share/gtk-doc/html/cairo/cairo.devhelp2
-file path=usr/share/gtk-doc/html/cairo/home.png
-file path=usr/share/gtk-doc/html/cairo/index-1.10.html
-file path=usr/share/gtk-doc/html/cairo/index-1.12.html
-file path=usr/share/gtk-doc/html/cairo/index-1.14.html
-file path=usr/share/gtk-doc/html/cairo/index-1.16.html
-file path=usr/share/gtk-doc/html/cairo/index-1.2.html
-file path=usr/share/gtk-doc/html/cairo/index-1.4.html
-file path=usr/share/gtk-doc/html/cairo/index-1.6.html
-file path=usr/share/gtk-doc/html/cairo/index-1.8.html
-file path=usr/share/gtk-doc/html/cairo/index-all.html
-file path=usr/share/gtk-doc/html/cairo/index.html
-file path=usr/share/gtk-doc/html/cairo/language-bindings.html
-file path=usr/share/gtk-doc/html/cairo/left-insensitive.png
-file path=usr/share/gtk-doc/html/cairo/left.png
-file path=usr/share/gtk-doc/html/cairo/right-insensitive.png
-file path=usr/share/gtk-doc/html/cairo/right.png
-file path=usr/share/gtk-doc/html/cairo/style.css
-file path=usr/share/gtk-doc/html/cairo/up-insensitive.png
-file path=usr/share/gtk-doc/html/cairo/up.png
diff --git a/components/library/cairo/patches/02-alloca.patch b/components/library/cairo/patches/02-alloca.patch
new file mode 100644
index 0000000..a27595a
--- /dev/null
+++ b/components/library/cairo/patches/02-alloca.patch
@@ -0,0 +1,10 @@
+--- cairo-1.18.0/src/cairo-colr-glyph-render.c	2023-09-23 16:18:32.000000000 +0200
++++ cairo-1.18.0/src/cairo-colr-glyph-render.c.new	2023-10-20 18:53:29.236767688 +0200
+@@ -41,6 +41,7 @@
+ #include <assert.h>
+ #include <math.h>
+ #include <stdio.h>
++#include <alloca.h>
+ #include <string.h>
+ 
+ #if HAVE_FT_COLR_V1
diff --git a/components/library/cairo/patches/02-solaris.patch b/components/library/cairo/patches/02-solaris.patch
deleted file mode 100755
index 18f5d77..0000000
--- a/components/library/cairo/patches/02-solaris.patch
+++ /dev/null
@@ -1,61 +0,0 @@
---- cairo-1.12.2/test/Makefile.am-orig	2012-04-30 08:16:23.161101505 -0500
-+++ cairo-1.12.2/test/Makefile.am	2012-04-30 08:22:07.331866211 -0500
-@@ -94,10 +94,6 @@ cairo_test_suite_DEPENDENCIES = \
- 	$(top_builddir)/test/pdiff/libpdiff.la 			\
-         $(top_builddir)/boilerplate/libcairoboilerplate.la	\
- 	$(top_builddir)/src/libcairo.la
--if BUILD_ANY2PPM
--cairo_test_suite_DEPENDENCIES += \
--	any2ppm$(EXEEXT)
--endif
- 
- if HAVE_SHM
- EXTRA_PROGRAMS += cairo-test-trace
-@@ -306,21 +302,6 @@ png_flatten_SOURCES = png-flatten.c
- png_flatten_LDADD = $(top_builddir)/src/libcairo.la \
- 		    $(CAIRO_LDADD)
- 
--if BUILD_ANY2PPM
--check_PROGRAMS += any2ppm
--any2ppm_CFLAGS = $(AM_CFLAGS) $(POPPLER_CFLAGS) $(LIBRSVG_CFLAGS) $(LIBSPECTRE_CFLAGS)
--# add LDADD, so poppler/librsvg uses "our" cairo
--any2ppm_LDFLAGS = $(AM_LDFLAGS) $(CAIRO_TEST_UNDEFINED_LDFLAGS)
--any2ppm_LDADD = \
--		$(top_builddir)/util/cairo-script/libcairo-script-interpreter.la \
--		$(top_builddir)/src/libcairo.la \
--		$(CAIRO_LDADD) \
--		$(CAIROBOILERPLATE_LIBS) \
--		$(POPPLER_LIBS) \
--		$(LIBRSVG_LIBS) \
--		$(LIBSPECTRE_LIBS)
--endif
--
- if CAIRO_CAN_TEST_PDF_SURFACE
- check_PROGRAMS += pdf2png
- pdf2png_CFLAGS = $(AM_CFLAGS) $(POPPLER_CFLAGS)
-@@ -341,16 +322,6 @@ svg2png_LDADD  = $(top_builddir)/src/lib
- 		 $(LIBRSVG_LIBS)
- endif
- 
--if CAIRO_HAS_SPECTRE
--check_PROGRAMS += ps2png
--ps2png_CFLAGS = $(AM_CFLAGS) $(LIBSPECTRE_CFLAGS)
--# add LDADD, so ps2png uses "our" cairo
--ps2png_LDFLAGS = $(AM_LDFLAGS) $(CAIRO_TEST_UNDEFINED_LDFLAGS)
--ps2png_LDADD  = $(top_builddir)/src/libcairo.la \
--		$(CAIRO_LDADD) \
--		$(LIBSPECTRE_LIBS)
--endif
--
- EXTRA_PROGRAMS += $(TESTS)
- 
- # Do a funny transition of CAIRO_TEST_TARGET through TARGETS such that
---- cairo-1.12.2/util/cairo-missing/getline.c-orig	2012-05-01 01:40:57.578652077 -0500
-+++ cairo-1.12.2/util/cairo-missing/getline.c	2012-05-01 01:41:31.649930767 -0500
-@@ -87,4 +87,6 @@ getline (char	**lineptr,
-     return ret;
- }
- #undef GETLINE_BUFFER_SIZE
-+#else
-+int cairo_missing_getline_dummy;
- #endif
diff --git a/components/library/cairo/patches/03-pthread-solaris.patch b/components/library/cairo/patches/03-pthread-solaris.patch
deleted file mode 100755
index 5b174d6..0000000
--- a/components/library/cairo/patches/03-pthread-solaris.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- cairo-1.12.2/build/configure.ac.pthread.orig	2012-10-22 11:07:51.251654403 +0530
-+++ cairo-1.12.2/build/configure.ac.pthread	2012-10-22 13:06:52.192850958 +0530
-@@ -190,10 +190,10 @@
- 	dnl Try to use the user's PTHREAD_LIBS/CFLAGS
- 	dnl if they're available.
- 	if test "x$PTHREAD_CFLAGS" = "x"; then
--		PTHREAD_CFLAGS="-D_REENTRANT"
-+		PTHREAD_CFLAGS="-D_REENTRANT -mt -lpthread"
- 	fi
- 	if test "x$PTHREAD_LIBS" = "x"; then
--		PTHREAD_LIBS="-lpthread"
-+		PTHREAD_LIBS="-mt -lpthread"
- 	fi
- 
- 	dnl First try to find the real pthreads.
diff --git a/components/library/cairo/patches/04-WIFEXITED.patch b/components/library/cairo/patches/04-WIFEXITED.patch
new file mode 100644
index 0000000..8b2061e
--- /dev/null
+++ b/components/library/cairo/patches/04-WIFEXITED.patch
@@ -0,0 +1,27 @@
+--- cairo-1.18.0/test/pdf-structure.c	2023-09-23 16:18:32.000000000 +0200
++++ cairo-1.18.0/test/pdf-structure.c.new	2023-10-22 18:38:14.407073994 +0200
+@@ -497,15 +497,20 @@
+                ctx->output, BASENAME, test->name);
+ 
+     ret = system (command);
+-    cairo_test_log (ctx, "%s  exit code %d\n", command,
+-                    WIFEXITED (ret) ? WEXITSTATUS (ret) : -1);
++    cairo_test_log (ctx, "%s  exit code %d\n", command, ret);
++//                    WIFEXITED (ret) ? WEXITSTATUS (ret) : -1);
+ 
+-    if (WIFEXITED (ret)) {
++/*    if (WIFEXITED (ret)) {
+         if (WEXITSTATUS (ret) == 0)
+             result = CAIRO_TEST_SUCCESS;
+         else if (WEXITSTATUS (ret) == 4)
+-            result = CAIRO_TEST_UNTESTED; /* pdfinfo not found, wrong version, missing ref */
++            result = CAIRO_TEST_UNTESTED;  pdfinfo not found, wrong version, missing ref 
+     }
++*/
++      if ( ret == 0)
++          result = CAIRO_TEST_SUCCESS;
++      else if ( ret > 0 )
++          result = CAIRO_TEST_UNTESTED; /* pdfinfo not found, wrong version, missing ref */
+ 
+     free (command);
+     return result;
diff --git a/components/library/cairo/patches/05-termios.patch b/components/library/cairo/patches/05-termios.patch
new file mode 100644
index 0000000..91eb10c
--- /dev/null
+++ b/components/library/cairo/patches/05-termios.patch
@@ -0,0 +1,10 @@
+--- cairo-1.18.0/perf/cairo-perf-print.c	2023-09-23 16:18:32.000000000 +0200
++++ cairo-1.18.0/perf/cairo-perf-print.c.new	2023-10-22 18:43:52.119120260 +0200
+@@ -43,6 +43,7 @@
+ #if USE_TERMINAL_SIZE
+ #include <unistd.h>
+ #include <sys/ioctl.h>
++#include <sys/termios.h>
+ #endif
+ 
+ static void
diff --git a/components/library/cairo/pkg5 b/components/library/cairo/pkg5
index f7d97a3..4447651 100644
--- a/components/library/cairo/pkg5
+++ b/components/library/cairo/pkg5
@@ -5,13 +5,14 @@
         "library/graphics/pixman",
         "library/lzo",
         "library/zlib",
-        "shell/ksh93",
         "system/library",
         "system/library/fontconfig",
         "system/library/freetype-2",
         "system/library/math",
         "x11/library/libx11",
-        "x11/library/libxcb"
+        "x11/library/libxcb",
+        "x11/library/libxext",
+        "x11/library/libxrender"
     ],
     "fmris": [
         "library/desktop/cairo"

--
Gitblit v1.9.3