1 ################################################################################
5 ################################################################################
8 CAIRO_SOURCE
= cairo-
$(CAIRO_VERSION
).
tar.xz
9 CAIRO_LICENSE
= LGPLv2.1 or MPLv1.1
(library
)
10 CAIRO_LICENSE_FILES
= COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1
11 CAIRO_SITE
= http
://cairographics.org
/releases
12 CAIRO_INSTALL_STAGING
= YES
13 CAIRO_AUTORECONF
= YES
15 # relocation truncated to fit: R_68K_GOT16O
16 ifeq ($(BR2_m68k_cf
),y
)
17 CAIRO_CONF_ENV
+= CFLAGS
="$(TARGET_CFLAGS) -mxgot"
20 ifeq ($(BR2_TOOLCHAIN_HAS_THREADS
),)
21 CAIRO_CONF_ENV
+= CPPFLAGS
="$(TARGET_CPPFLAGS) -DCAIRO_NO_MUTEX=1"
24 # cairo can use C++11 atomics when available, so we need to link with
25 # libatomic for the architectures who need libatomic.
26 ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC
),y
)
27 CAIRO_CONF_ENV
+= LIBS
="-latomic"
32 --enable-interpreter
=no
34 CAIRO_DEPENDENCIES
= host-pkgconf fontconfig pixman
36 # Just the bare minimum to make other host-* packages happy
37 HOST_CAIRO_CONF_OPTS
= \
39 --enable-interpreter
=no \
48 --disable-xlib-xrender \
56 HOST_CAIRO_DEPENDENCIES
= \
63 # DirectFB svg support rely on Cairo and Cairo DirectFB support depends on
64 # DirectFB. Break circular dependency by disabling DirectFB support in Cairo
65 # (which is experimental)
66 ifeq ($(BR2_PACKAGE_DIRECTFB
)x
$(BR2_PACKAGE_DIRECTFB_SVG
),yx
)
67 CAIRO_CONF_OPTS
+= --enable-directfb
68 CAIRO_DEPENDENCIES
+= directfb
70 CAIRO_CONF_OPTS
+= --disable-directfb
73 ifeq ($(BR2_PACKAGE_FREETYPE
),y
)
74 CAIRO_CONF_OPTS
+= --enable-ft
75 CAIRO_DEPENDENCIES
+= freetype
77 CAIRO_CONF_OPTS
+= --disable-ft
80 ifeq ($(BR2_PACKAGE_LIBGLIB2
),y
)
81 CAIRO_CONF_OPTS
+= --enable-gobject
82 CAIRO_DEPENDENCIES
+= libglib2
84 CAIRO_CONF_OPTS
+= --disable-gobject
87 # Can use GL or GLESv2 but not both
88 ifeq ($(BR2_PACKAGE_HAS_LIBGL
),y
)
89 CAIRO_CONF_OPTS
+= --enable-gl
--disable-glesv2
90 CAIRO_DEPENDENCIES
+= libgl
92 ifeq ($(BR2_PACKAGE_HAS_LIBGLES
),y
)
93 CAIRO_CONF_OPTS
+= --disable-gl
--enable-glesv2
94 CAIRO_DEPENDENCIES
+= libgles
96 CAIRO_CONF_OPTS
+= --disable-gl
--disable-glesv2
100 ifeq ($(BR2_PACKAGE_HAS_LIBOPENVG
),y
)
101 CAIRO_CONF_OPTS
+= --enable-vg
102 CAIRO_DEPENDENCIES
+= libopenvg
104 CAIRO_CONF_OPTS
+= --disable-vg
107 ifeq ($(BR2_PACKAGE_LZO
),y
)
108 CAIRO_DEPENDENCIES
+= lzo
111 ifeq ($(BR2_PACKAGE_XORG7
),y
)
112 CAIRO_CONF_OPTS
+= --enable-xlib
--enable-xcb
--with-x
113 CAIRO_DEPENDENCIES
+= xlib_libX11 xlib_libXext
115 CAIRO_CONF_OPTS
+= --disable-xlib
--disable-xcb
--without-x
118 ifeq ($(BR2_PACKAGE_XLIB_LIBXRENDER
),y
)
119 CAIRO_CONF_OPTS
+= --enable-xlib-xrender
120 CAIRO_DEPENDENCIES
+= xlib_libXrender
122 CAIRO_CONF_OPTS
+= --disable-xlib-xrender
125 ifeq ($(BR2_PACKAGE_CAIRO_PS
),y
)
126 CAIRO_CONF_OPTS
+= --enable-ps
127 CAIRO_DEPENDENCIES
+= zlib
129 CAIRO_CONF_OPTS
+= --disable-ps
132 ifeq ($(BR2_PACKAGE_CAIRO_PDF
),y
)
133 CAIRO_CONF_OPTS
+= --enable-pdf
134 CAIRO_DEPENDENCIES
+= zlib
136 CAIRO_CONF_OPTS
+= --disable-pdf
139 ifeq ($(BR2_PACKAGE_CAIRO_PNG
),y
)
140 CAIRO_CONF_OPTS
+= --enable-png
141 CAIRO_DEPENDENCIES
+= libpng
143 CAIRO_CONF_OPTS
+= --disable-png
146 ifeq ($(BR2_PACKAGE_CAIRO_SCRIPT
),y
)
147 CAIRO_CONF_OPTS
+= --enable-script
149 CAIRO_CONF_OPTS
+= --disable-script
152 ifeq ($(BR2_PACKAGE_CAIRO_SVG
),y
)
153 CAIRO_CONF_OPTS
+= --enable-svg
155 CAIRO_CONF_OPTS
+= --disable-svg
158 ifeq ($(BR2_PACKAGE_CAIRO_TEE
),y
)
159 CAIRO_CONF_OPTS
+= --enable-tee
161 CAIRO_CONF_OPTS
+= --disable-tee
164 ifeq ($(BR2_PACKAGE_CAIRO_XML
),y
)
165 CAIRO_CONF_OPTS
+= --enable-xml
167 CAIRO_CONF_OPTS
+= --disable-xml
170 $(eval
$(autotools-package
))
171 $(eval
$(host-autotools-package
))