SUMMARY="Multi-platform 2D graphics library" DESCRIPTION="Cairo is a 2D graphics library with support for multiple output \ devices. Currently supported output targets include the X Window \ System (via both Xlib and XCB), quartz, win32, and image buffers, \ as well as PDF, PostScript, and SVG file output. Experimental backends \ include OpenGL, BeOS, OS/2, and DirectFB." HOMEPAGE="http://cairographics.org/" COPYRIGHT="2000, 2002, 2004-2007 Keith Packard 2002-2003 University of Southern California 2004-2010 Red Hat, Inc. 2005-2010 Mozilla Corporation 2006-2009 Adrian Johnson 2007-2009 Chris Wilson 2006-2013 Intel Corporation 2011 Andrea Canciani 2011 Samsung Electronics 2010-2011 Linaro Limited 2009-2010 Eric Anholt 2002-2010 many others" LICENSE="GNU LGPL v2.1 MPL v1.1" REVISION="2" SOURCE_URI="http://cairographics.org/releases/cairo-$portVersion.tar.xz" CHECKSUM_SHA256="5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331" PATCHES="cairo-$portVersion.patchset" SOURCE_DIR="cairo-$portVersion" ARCHITECTURES="all !x86_gcc2" SECONDARY_ARCHITECTURES="x86" libVersion="2.11600.0" libVersionCompat="$libVersion compat >= ${libVersion%%.*}" PROVIDES=" xcairo$secondaryArchSuffix = $portVersion lib:libcairo_xlib$secondaryArchSuffix = $libVersionCompat " REQUIRES=" haiku$secondaryArchSuffix cairo$secondaryArchSuffix == $portVersion lib:libpixman_1$secondaryArchSuffix lib:libX11$secondaryArchSuffix " PROVIDES_devel=" xcairo${secondaryArchSuffix}_devel = $portVersion devel:libcairo_xlib$secondaryArchSuffix = $libVersionCompat " REQUIRES_devel=" xcairo$secondaryArchSuffix == $portVersion base cairo${secondaryArchSuffix}_devel == $portVersion devel:libpixman_1$secondaryArchSuffix devel:libX11$secondaryArchSuffix " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel cairo${secondaryArchSuffix}_devel == $portVersion devel:libX11$secondaryArchSuffix " BUILD_PREREQUIRES=" cmd:aclocal cmd:autoconf cmd:automake cmd:gcc$secondaryArchSuffix cmd:ld$secondaryArchSuffix cmd:libtoolize cmd:make cmd:pkg_config$secondaryArchSuffix " defineDebugInfoPackage xcairo$secondaryArchSuffix \ "$libDir"/libcairo-xlib.so.$libVersion BUILD() { autoreconf -fi export CFLAGS=-D__BSD_VISIBLE runConfigure ./configure \ --disable-static --enable-shared \ --enable-xlib make $jobArgs # hack: build libcairo-xlib from just the relevant objects rm -f cairo-tmp.a # TODO: these symbols should really all be hidden ar rcs cairo-tmp.a src/.libs/*.o gcc -shared -o libcairo-xlib.so -lcairo -lpixman-1 -lfreetype -lfontconfig \ -lX11 -lXext -Wl,--no-undefined \ src/.libs/*xlib*.o cairo-tmp.a } INSTALL() { # install our custom cairo-xlib mkdir -p $libDir cp libcairo-xlib.so $libDir mv $libDir/libcairo-xlib.so $libDir/libcairo-xlib.so.$libVersion ln -s libcairo-xlib.so.$libVersion $libDir/libcairo-xlib.so.2 ln -s libcairo-xlib.so.$libVersion $libDir/libcairo-xlib.so # pkg-config mkdir -p $developLibDir/pkgconfig/ cp src/cairo-xlib.pc $developLibDir/pkgconfig/ sed -i "s/Libs\\:/Libs\\: -lcairo-xlib/" $developLibDir/pkgconfig/cairo-xlib.pc # header mkdir -p $includeDir/cairo cp src/cairo-xlib.h $includeDir/cairo/ sed -i '/^#if CAIRO_HAS_XLIB_SURFACE.*/i #define CAIRO_HAS_XLIB_SURFACE 1' $includeDir/cairo/cairo-xlib.h prepareInstalledDevelLibs \ libcairo-xlib packageEntries devel \ $developDir }