pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

cairo: one step closer



Module Name:	pkgsrc-wip
Committed By:	Adam Ciarciński <aciarcinski%teonite.com@localhost>
Pushed By:	adam
Date:		Sun Nov 12 19:09:25 2023 +0100
Changeset:	acc2ee04d218acd26c3bbf76d808ad5700ea4c19

Modified Files:
	cairo/Makefile
	cairo/Makefile.common
	cairo/PLIST
	cairo/distinfo
	cairo/hacks.mk
	cairo/options.mk
Added Files:
	cairo/patches/patch-util_cairo-gobject_cairo-gobject.h
	cairo/patches/patch-util_cairo-missing_getline.c
Removed Files:
	cairo/log
	cairo/patches/patch-ac
	cairo/patches/patch-ad

Log Message:
cairo: one step closer

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=acc2ee04d218acd26c3bbf76d808ad5700ea4c19

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 cairo/Makefile                                     |  12 +-
 cairo/Makefile.common                              |   6 +-
 cairo/PLIST                                        |   6 +
 cairo/distinfo                                     |   4 +-
 cairo/hacks.mk                                     |   4 +-
 cairo/log                                          | 186 ---------------------
 cairo/options.mk                                   |  12 +-
 cairo/patches/patch-ac                             |  17 --
 cairo/patches/patch-ad                             |  13 --
 .../patch-util_cairo-gobject_cairo-gobject.h       |  17 ++
 cairo/patches/patch-util_cairo-missing_getline.c   |  13 ++
 11 files changed, 59 insertions(+), 231 deletions(-)

diffs:
diff --git a/cairo/Makefile b/cairo/Makefile
index e6b4491699..211421481e 100644
--- a/cairo/Makefile
+++ b/cairo/Makefile
@@ -2,15 +2,23 @@
 
 .include "../../wip/cairo/Makefile.common"
 
-TEST_TARGET=			check
+TEST_TARGET=	check
 
 MESON_ARGS+=	-Dglib=disabled
 
-PKGCONFIG_OVERRIDE_STAGE=       post-build
+PKGCONFIG_OVERRIDE_STAGE=	post-build
 PKGCONFIG_OVERRIDE+=		output/meson-private/*.pc
 
 .include "options.mk"
 
+.include "../../mk/bsd.prefs.mk"
+
+# see meson.build for systems that support cairo-trace
+PLIST_VARS+=	trace
+.if ${OPSYS} == "Darwin" || ${OPSYS} == "DragonFly" || ${OPSYS} == "FreeBSD" || ${OPSYS} == "Linux"
+PLIST.trace=	yes
+.endif
+
 .include "../../archivers/lzo/buildlink3.mk"
 .include "../../devel/zlib/buildlink3.mk"
 .include "../../graphics/png/buildlink3.mk"
diff --git a/cairo/Makefile.common b/cairo/Makefile.common
index e8f9b2564e..7699df0dbd 100644
--- a/cairo/Makefile.common
+++ b/cairo/Makefile.common
@@ -16,16 +16,14 @@ LICENSE=	gnu-lgpl-v2.1 AND mpl-1.1
 DISTINFO_FILE=	${.CURDIR}/../../wip/cairo/distinfo
 PATCHDIR=	${.CURDIR}/../../wip/cairo/patches
 
+USE_CC_FEATURES=	c99
 USE_LANGUAGES=		c c++
 USE_TOOLS+=		pkg-config
-
-USE_CC_FEATURES=	c99
-
 PKGCONFIG_OVERRIDE+=	src/cairo.pc.in
 PKGCONFIG_OVERRIDE+=	src/cairo-features.pc.in
 
 # For snprintf() and ctime_r()
-CPPFLAGS.SunOS+=		-D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS
+CPPFLAGS.SunOS+=	-D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS
 
 .include "../../devel/meson/build.mk"
 .include "../../lang/python/tool.mk"
diff --git a/cairo/PLIST b/cairo/PLIST
index ad807141ae..5b97070dd5 100644
--- a/cairo/PLIST
+++ b/cairo/PLIST
@@ -1,6 +1,8 @@
 @comment $NetBSD$
+${PLIST.trace}bin/cairo-trace
 include/cairo/cairo-deprecated.h
 include/cairo/cairo-features.h
+${PLIST.x11}include/cairo/cairo-ft.h
 include/cairo/cairo-pdf.h
 include/cairo/cairo-ps.h
 ${PLIST.quartz}include/cairo/cairo-quartz-image.h
@@ -14,12 +16,16 @@ ${PLIST.xcb}include/cairo/cairo-xcb.h
 ${PLIST.x11}include/cairo/cairo-xlib-xrender.h
 ${PLIST.x11}include/cairo/cairo-xlib.h
 include/cairo/cairo.h
+${PLIST.trace}lib/cairo/libcairo-fdr.so
+${PLIST.trace}lib/cairo/libcairo-trace.so
 lib/libcairo-script-interpreter.so
 lib/libcairo-script-interpreter.so.2
 lib/libcairo-script-interpreter.so.2.11800.0
 lib/libcairo.so
 lib/libcairo.so.2
 lib/libcairo.so.2.11800.0
+${PLIST.x11}lib/pkgconfig/cairo-fc.pc
+${PLIST.x11}lib/pkgconfig/cairo-ft.pc
 lib/pkgconfig/cairo-pdf.pc
 lib/pkgconfig/cairo-png.pc
 lib/pkgconfig/cairo-ps.pc
diff --git a/cairo/distinfo b/cairo/distinfo
index 40cb5c3b2d..5b4e20de9c 100644
--- a/cairo/distinfo
+++ b/cairo/distinfo
@@ -3,8 +3,8 @@ $NetBSD: distinfo,v 1.97 2023/01/24 10:16:33 wiz Exp $
 BLAKE2s (cairo-1.18.0.tar.xz) = d17e3d7a1b32769f02500ff3edaf8a7e18974873a128c61e607f05e5216e8a63
 SHA512 (cairo-1.18.0.tar.xz) = 6366c7d5e3fd3e12df2edc43aa4ed4c3a517de2ef0b1b3b30dfa8b69a7cae1dd55765801228cec308d2e9792037d0704ae49d95b7b12c06f20df092fa0534e1c
 Size (cairo-1.18.0.tar.xz) = 33761148 bytes
-SHA1 (patch-ac) = 1785bbef6bcab4781bf89e1b986a7eb96e5f2b64
-SHA1 (patch-ad) = a1068a37113b162ccfe14d7f1bd0baa9df7e5530
 SHA1 (patch-meson.build) = 3187c754af123be69e1b5651165f6310c8786558
 SHA1 (patch-test_pdf-structure.c) = dd3e5ee2cdbc19e77c2d5a60dab98195ecbe82bb
+SHA1 (patch-util_cairo-gobject_cairo-gobject.h) = 1785bbef6bcab4781bf89e1b986a7eb96e5f2b64
+SHA1 (patch-util_cairo-missing_getline.c) = a1068a37113b162ccfe14d7f1bd0baa9df7e5530
 SHA1 (patch-util_meson.build) = 344d29f84114b441bbfede8b77d7a2d02d756ce4
diff --git a/cairo/hacks.mk b/cairo/hacks.mk
index b08a8079a2..aead5905fe 100644
--- a/cairo/hacks.mk
+++ b/cairo/hacks.mk
@@ -48,8 +48,8 @@ PTHREAD_CFLAGS.MirBSD=	-fhonour-copts
 # point the necessary updates to X were applied. I'm assuming this is
 # old enough that nobody's going to care.
 #
-.if !empty(MACHINE_PLATFORM:MNetBSD-5.*) && \
-    empty(MACHINE_PLATFORM:MNetBSD-5.99.*) && \
+.if ${MACHINE_PLATFORM:MNetBSD-5.*} && \
+    !${MACHINE_PLATFORM:MNetBSD-5.99.*} && \
     ${X11_TYPE} == "native"
 SUBST_CLASSES+=		pixman
 SUBST_STAGE.pixman=	post-build
diff --git a/cairo/log b/cairo/log
deleted file mode 100644
index 4da7a5e3ed..0000000000
--- a/cairo/log
+++ /dev/null
@@ -1,186 +0,0 @@
-Release 1.18.0 (2023-09-20 Emmanuele Bassi <ebassi%gnome.org@localhost>)
-==============================================================
-
-The first stable cairo release in five years should be cause for celebration.
-
-All the API added in the 1.17 development cycle is now considered stable, and
-will not change.
-
-Many thanks to all the contributors for this release.
-
-The cairo-sphinx tool has been removed; we could not find any instruction on
-how to use it, and no user answered our call for help. If you were using
-cairo-sphinx, please reach out to the cairo maintainers.
-
-Cairo now implements Type 3 color fonts for PDF. Thanks to Adrian Johnson for
-his work on this feature.
-
-Khaled Hosny contributed multiple documentation fixes, to ensure that the
-cairo API reference is up to date. Khaled also fixed multiple compiler
-warnings generated when building cairo.
-
-The XML surface has been removed; it was disabled by default when building
-cairo, and we could not find any downstream distributor that would enable
-it.
-
-The Tee surface is now automatically enabled. Downstream distributors of
-cairo have been enabling for years it in order to build Firefox.
-
-Fujii Hironori and Adrian Johnson fixed multiple issues with the DWrite
-font backend.
-
-John Ralls improved the Quartz surface; mainly, Quartz surfaces now use
-the main display ColorSpace, speeding up rendering operations.
-
-Cairo now hides all private symbols by default on every platform; the old
-"slim" symbols hack to alias internally used symbols has been dropped, in
-favor of using `-Bsymbolic-functions` with toolchains that support it.
-
-Uli Schlachter fixed multiple memory leaks in the code base and test suite,
-and helped with many reviews and general maintenance.
-
-Marc Jeanmougin added new API to expose the Pixman dithering filter to cairo
-patterns; this is currently implemented only for image surfaces.
-
-Release 1.17.8 (2023-01-30 Emmanuele Bassi <ebassi%gnome.org@localhost>)
-==============================================================
-
-A new cairo snapshot! And it only took less than one year, this time!
-
-Many thanks to everyone who contributed to cairo, and especially
-to (in no particular order):
-
-- Adrian Johnson
-- Khaled Hosny
-- Behdad Esfahbod
-- Matthias Clasen
-- Uli Schlachter
-- Manuel Stoeckl
-- Fujii Hironori
-- Tim-Philipp Müller
-- Luca Bacci
-- Caolán McNamara
-- John Ralls
-
-In a continuing effort to reduce the amount of legacy code, and increase
-the long-term maintainability of cairo, the following backends have been
-removed:
-
-- GL and GLES drawing
-
-Additionally, cairo's Autotools build system has been removed; from now on,
-cairo will only support the Meson build system. While the end result should
-be identical, further testing is appreciated.
-
-In this snapshot, cairo gained support for rendering COLRv1 fonts, and
-rendering SVG and COLRv1 fonts with custom palettes.
-
-Support for macOS and Windows has been improved, with lots of build and bug
-fixes.
-
-Lots of safety issues have been fixed, with array bounds checking and
-plugging memory leaks, as well as fixes for bugs identified via fuzzying.
-
-This is going to be the last snapshot of the 1.17 development cycle; we only
-expect minor bug fixing and improvements until the 1.18.0 release.
-
-Release 1.17.6 (2022-03-18 Emmanuele Bassi <ebassi%gnome.org@localhost>)
-==============================================================
-
-I spy with my little eye… a cairo snapshot!
-
-First of all, many, many thanks to everyone who contributed to cairo
-during this development cycle. A special thank you goes to:
-
-- Adrian Johnson
-- Uli Schlachter
-
-for their tireless efforts in ensuring that the lights are still on
-in the cairo project.
-
-This snapshot sees the removal of the following backends and platform
-support:
-
-- Qt4
-- BeOS
-- OS/2
-- DirectFB
-- DRM
-- Cogl
-- OpenVG
-
-Thanks to all past contributors for their work on them. If you were using
-any of these backends then you will need to stick to cairo 1.16.
-
-To offset the removal of the backends above, Adrian Johnson landed the
-DWrite font rendering backend on Windows.
-
-There have been multiple improvements in the Quartz backend, courtesy of
-John Ralls.
-
-Tim-Philipp Müller has kept the Meson build in top shape.
-
-This snapshot is going to be the **last** release of cairo with the
-Autotools build system. The Meson build has seen many improvements and
-it is considerably easier to maintain and faster to build.
-
-Release 1.17.4 (2020-11-27 Bryce Harrington <bryce%bryceharrington.org@localhost>)
-========================================================================
-
-Thank you to the many people who have contributed the large number of
-bug fixes and refinements since 1.17.2.
-
-A particularly noteworthy improvement in this release is the addition of
-the meson build system as an alternative to autotools.  Autotools is
-still used for producing the releases, so will be the default in the
-tarball and presumably will still be preferred by distro packagers of
-Cairo.  It should be possible to build the release tarball using meson,
-but as this is new functionality consider it still a work in progress.
-The meson configuration has striven to track the autotools
-implementation but be aware there may still be some differences between
-the two.
-
-Continuous Integration configurations have been added that enable
-testing on a variety of platforms including Fedora, Windows MSVC, etc.
-This work has helped in identifying updates and fixes including
-adjusting to changes in API calls in dependencies like rsvg and
-fontconfig, and to fix platform-specific build issues.
-
-The cogl Cairo backend underwent significant development this cycle.
-Cogl provides GPU accelerated drawing support.  The development work
-includes implementation of core functionality, performance
-optimizations, and stabilization.
-
-Subpixel positioning support allows improved glyph outlines with the
-FreeType font backend.
-
-For a complete log of changes, please see
-
-    https://cairographics.org/releases/ChangeLog.1.17.4
-
-[On a personal note, this will be my last release for Cairo.  My Cairo
-time availability has been non-existent (particularly this crazy past
-year).  The release process is well documented and hopefully will help
-whomever picks up the baton from here.]
-
-
-Release 1.17.2 (2019-01-31 Bryce Harrington <bryce%bryceharrington.org@localhost>)
-========================================================================
-This snapshot provides the new support for writing floating point
-formats as 16 bpc PNGs, with support for RGBA128F and RGB96F formats.
-This new feature increases Cairo's pixman version requirement to 0.36.0.
-
-Beyond this are a range of bugfixes and some work on establishing CI for
-Cairo.
-
-For a complete log of changes, please see
-
-    https://cairographics.org/releases/ChangeLog.1.17.2
-
-API Changes
------------
-None
-
-Dependency Changes
-------------------
-pixman 0.36.0
diff --git a/cairo/options.mk b/cairo/options.mk
index f7f66adc92..3b0bd5e78c 100644
--- a/cairo/options.mk
+++ b/cairo/options.mk
@@ -11,19 +11,21 @@ PKG_SUGGESTED_OPTIONS=	x11 xcb
 
 .include "../../mk/bsd.options.mk"
 
-PLIST_VARS+=		x11 xcb quartz
+PLIST_VARS+=	x11 xcb quartz
 
 ###
 ### X11 and XCB support (XCB implies X11)
 ###
 .if !empty(PKG_OPTIONS:Mx11) || !empty(PKG_OPTIONS:Mxcb)
-PLIST.x11=		yes
+PLIST.x11=	yes
+.include "../../fonts/fontconfig/buildlink3.mk"
+.include "../../graphics/freetype2/buildlink3.mk"
 .include "../../x11/libX11/buildlink3.mk"
 .include "../../x11/libXext/buildlink3.mk"
 .include "../../x11/libXrender/buildlink3.mk"
 
 .  if !empty(PKG_OPTIONS:Mxcb)
-PLIST.xcb=		yes
+PLIST.xcb=	yes
 .    include "../../x11/libxcb/buildlink3.mk"
 .  endif
 .endif
@@ -39,6 +41,6 @@ PLIST.xcb=		yes
 # fonts in MacOS X system-default paths too so sticking with it will
 # not be a problem.
 .if !empty(PKG_OPTIONS:Mquartz)
-PLIST.quartz=		yes
-WARNINGS+=		"You have enabled Quartz backend. No fonts installed with pkgsrc will be found."
+PLIST.quartz=	yes
+WARNINGS+=	"You have enabled Quartz backend. No fonts installed with pkgsrc will be found."
 .endif
diff --git a/cairo/patches/patch-ac b/cairo/patches/patch-ac
deleted file mode 100644
index ca3ccd2011..0000000000
--- a/cairo/patches/patch-ac
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-ac,v 1.18 2012/11/04 23:48:54 wiz Exp $
-
-File is only installed by cairo-gobject, so manually
-define existence macro.
-
---- util/cairo-gobject/cairo-gobject.h.orig	2010-09-09 15:56:24.000000000 +0000
-+++ util/cairo-gobject/cairo-gobject.h
-@@ -39,6 +39,9 @@
- 
- #include <cairo.h>
- 
-+/* if this header is installed, cairo has gobject functions */
-+#define CAIRO_HAS_GOBJECT_FUNCTIONS 1
-+
- #if CAIRO_HAS_GOBJECT_FUNCTIONS
- 
- #include <glib-object.h>
diff --git a/cairo/patches/patch-ad b/cairo/patches/patch-ad
deleted file mode 100644
index 0b0f5135b8..0000000000
--- a/cairo/patches/patch-ad
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ad,v 1.11 2012/09/13 15:50:08 jperkin Exp $
-
-The variable name is self-explanatory :)
-
---- util/cairo-missing/getline.c.orig	Thu Sep 13 15:45:55 2012
-+++ util/cairo-missing/getline.c	Thu Sep 13 15:46:18 2012
-@@ -87,4 +87,6 @@
-     return ret;
- }
- #undef GETLINE_BUFFER_SIZE
-+#else
-+int solaris_ld_requires_at_least_one_symbol = 0;
- #endif
diff --git a/cairo/patches/patch-util_cairo-gobject_cairo-gobject.h b/cairo/patches/patch-util_cairo-gobject_cairo-gobject.h
new file mode 100644
index 0000000000..ca3ccd2011
--- /dev/null
+++ b/cairo/patches/patch-util_cairo-gobject_cairo-gobject.h
@@ -0,0 +1,17 @@
+$NetBSD: patch-ac,v 1.18 2012/11/04 23:48:54 wiz Exp $
+
+File is only installed by cairo-gobject, so manually
+define existence macro.
+
+--- util/cairo-gobject/cairo-gobject.h.orig	2010-09-09 15:56:24.000000000 +0000
++++ util/cairo-gobject/cairo-gobject.h
+@@ -39,6 +39,9 @@
+ 
+ #include <cairo.h>
+ 
++/* if this header is installed, cairo has gobject functions */
++#define CAIRO_HAS_GOBJECT_FUNCTIONS 1
++
+ #if CAIRO_HAS_GOBJECT_FUNCTIONS
+ 
+ #include <glib-object.h>
diff --git a/cairo/patches/patch-util_cairo-missing_getline.c b/cairo/patches/patch-util_cairo-missing_getline.c
new file mode 100644
index 0000000000..0b0f5135b8
--- /dev/null
+++ b/cairo/patches/patch-util_cairo-missing_getline.c
@@ -0,0 +1,13 @@
+$NetBSD: patch-ad,v 1.11 2012/09/13 15:50:08 jperkin Exp $
+
+The variable name is self-explanatory :)
+
+--- util/cairo-missing/getline.c.orig	Thu Sep 13 15:45:55 2012
++++ util/cairo-missing/getline.c	Thu Sep 13 15:46:18 2012
+@@ -87,4 +87,6 @@
+     return ret;
+ }
+ #undef GETLINE_BUFFER_SIZE
++#else
++int solaris_ld_requires_at_least_one_symbol = 0;
+ #endif


Home | Main Index | Thread Index | Old Index