1SUMMARY="Multi-platform 2D graphics library (with Xlib surfaces)"
2DESCRIPTION="Cairo is a 2D graphics library with support for multiple output \
3devices. Currently supported output targets include the X Window \
4System (via both Xlib and XCB), quartz, win32, and image buffers, \
5as well as PDF, PostScript, and SVG file output. Experimental backends \
6include OpenGL, BeOS, OS/2, and DirectFB."
7HOMEPAGE="http://cairographics.org/"
8COPYRIGHT="2000, 2002, 2004-2007 Keith Packard
9	2002-2003 University of Southern California
10	2004-2010 Red Hat, Inc.
11	2005-2010 Mozilla Corporation
12	2006-2009 Adrian Johnson
13	2007-2009 Chris Wilson
14	2006-2013 Intel Corporation
15	2011 Andrea Canciani
16	2011 Samsung Electronics
17	2010-2011 Linaro Limited
18	2009-2010 Eric Anholt
19	2002-2010 many others"
20LICENSE="GNU LGPL v2.1
21	MPL v1.1"
22REVISION="1"
23SOURCE_URI="http://cairographics.org/releases/cairo-$portVersion.tar.xz"
24CHECKSUM_SHA256="243a0736b978a33dee29f9cca7521733b78a65b5418206fef7bd1c3d4cf10b64"
25SOURCE_DIR="cairo-$portVersion"
26PATCHES="cairo-$portVersion.patchset"
27
28ARCHITECTURES="all !x86_gcc2"
29SECONDARY_ARCHITECTURES="x86"
30
31# This recipe MUST be kept in sync with cairo!
32
33libVersion="2.11800.0"
34libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
35
36PROVIDES="
37	xcairo1.18$secondaryArchSuffix = $portVersion
38	lib:libcairo$secondaryArchSuffix = $libVersionCompat
39	lib:libcairo_gobject$secondaryArchSuffix = $libVersionCompat
40	lib:libcairo_script_interpreter$secondaryArchSuffix = $libVersionCompat
41	"
42REQUIRES="
43	haiku$secondaryArchSuffix
44	lib:libfontconfig$secondaryArchSuffix
45	lib:libfreetype$secondaryArchSuffix
46	lib:libglib_2.0$secondaryArchSuffix
47	lib:libintl$secondaryArchSuffix
48	lib:libpixman_1$secondaryArchSuffix
49	lib:libpng16$secondaryArchSuffix
50	lib:libz$secondaryArchSuffix
51
52	lib:libX11$secondaryArchSuffix
53	lib:libXext$secondaryArchSuffix
54	"
55CONFLICTS="
56	cairo1.18$secondaryArchSuffix
57	"
58
59PROVIDES_devel="
60	xcairo1.18${secondaryArchSuffix}_devel = $portVersion
61	devel:libcairo$secondaryArchSuffix = $libVersionCompat
62	devel:libcairo_gobject$secondaryArchSuffix = $libVersionCompat
63	devel:libcairo_script_interpreter$secondaryArchSuffix = $libVersionCompat
64	"
65REQUIRES_devel="
66	xcairo1.18$secondaryArchSuffix == $portVersion base
67	devel:libglib_2.0$secondaryArchSuffix
68	devel:libfontconfig$secondaryArchSuffix
69	devel:libpixman_1$secondaryArchSuffix
70
71	devel:libX11$secondaryArchSuffix
72	"
73CONFLICTS_devel="
74	cairo${secondaryArchSuffix}_devel
75	xcairo${secondaryArchSuffix}_devel
76	"
77
78BUILD_REQUIRES="
79	haiku${secondaryArchSuffix}_devel
80	devel:libfontconfig$secondaryArchSuffix
81	devel:libfreetype$secondaryArchSuffix
82	devel:libglib_2.0$secondaryArchSuffix
83	devel:libpixman_1$secondaryArchSuffix
84	devel:libpng16$secondaryArchSuffix
85	devel:libz$secondaryArchSuffix
86
87	devel:libX11$secondaryArchSuffix
88	devel:libXext$secondaryArchSuffix
89	"
90BUILD_PREREQUIRES="
91	cmd:cmake
92	cmd:gcc$secondaryArchSuffix
93	cmd:gtkdocize
94	cmd:ld$secondaryArchSuffix
95	cmd:ninja
96	cmd:make
97	cmd:meson
98	cmd:pkg_config$secondaryArchSuffix
99	pygments_python310
100	"
101
102defineDebugInfoPackage xcairo1.18$secondaryArchSuffix \
103	"$libDir"/libcairo.so.$libVersion \
104	"$libDir"/libcairo-gobject.so.$libVersion \
105	"$libDir"/libcairo-script-interpreter.so.$libVersion
106
107BUILD()
108{
109	meson \
110		--buildtype=release \
111		--prefix=$prefix \
112		--libdir=$libDir \
113		--libexecdir=$binDir \
114		--datadir=$dataDir \
115		--includedir=$includeDir \
116		--sysconfdir=$settingsDir \
117		-Dgtk_doc=true \
118		build
119	ninja -C build
120}
121
122INSTALL()
123{
124	ninja -C build install
125
126#	#install documentation
127	mkdir -p $dataDir
128	mv $prefix/share/gtk-doc $dataDir
129	rm -rf $prefix/share
130
131	prepareInstalledDevelLibs \
132		libcairo \
133		libcairo-gobject \
134		libcairo-script-interpreter
135	fixPkgconfig
136
137	packageEntries devel \
138		$developDir \
139		$dataDir
140}
141
142TEST()
143{
144	cd build/test
145	cairo-test-suite
146}
147