1 ################################################################################
5 ################################################################################
8 CAIRO_SOURCE
= cairo-
$(CAIRO_VERSION
).
tar.xz
9 CAIRO_LICENSE
= LGPLv2.1
+
10 CAIRO_LICENSE_FILES
= COPYING
11 CAIRO_SITE
= http
://cairographics.org
/releases
12 CAIRO_INSTALL_STAGING
= YES
13 CAIRO_AUTORECONF
= YES
15 ifeq ($(BR2_TOOLCHAIN_HAS_THREADS
),)
16 CAIRO_CONF_ENV
+= CPPFLAGS
="$(TARGET_CPPFLAGS) -DCAIRO_NO_MUTEX=1"
19 # cairo can use C++11 atomics when available, so we need to link with
20 # libatomic for the architectures who need libatomic.
21 ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC
),y
)
22 CAIRO_CONF_ENV
+= LIBS
="-latomic"
27 --enable-interpreter
=no
29 CAIRO_DEPENDENCIES
= host-pkgconf fontconfig pixman
31 # Just the bare minimum to make other host-* packages happy
32 HOST_CAIRO_CONF_OPTS
= \
34 --enable-interpreter
=no \
43 --disable-xlib-xrender \
51 HOST_CAIRO_DEPENDENCIES
= \
58 # DirectFB svg support rely on Cairo and Cairo DirectFB support depends on
59 # DirectFB. Break circular dependency by disabling DirectFB support in Cairo
60 # (which is experimental)
61 ifeq ($(BR2_PACKAGE_DIRECTFB
)x
$(BR2_PACKAGE_DIRECTFB_SVG
),yx
)
62 CAIRO_CONF_OPTS
+= --enable-directfb
63 CAIRO_DEPENDENCIES
+= directfb
65 CAIRO_CONF_OPTS
+= --disable-directfb
68 ifeq ($(BR2_PACKAGE_FREETYPE
),y
)
69 CAIRO_CONF_OPTS
+= --enable-ft
70 CAIRO_DEPENDENCIES
+= freetype
72 CAIRO_CONF_OPTS
+= --disable-ft
75 ifeq ($(BR2_PACKAGE_LIBGLIB2
),y
)
76 CAIRO_CONF_OPTS
+= --enable-gobject
77 CAIRO_DEPENDENCIES
+= libglib2
79 CAIRO_CONF_OPTS
+= --disable-gobject
82 # Can use GL or GLESv2 but not both
83 ifeq ($(BR2_PACKAGE_HAS_LIBGL
),y
)
84 CAIRO_CONF_OPTS
+= --enable-gl
--disable-glesv2
85 CAIRO_DEPENDENCIES
+= libgl
87 ifeq ($(BR2_PACKAGE_HAS_LIBGLES
),y
)
88 CAIRO_CONF_OPTS
+= --disable-gl
--enable-glesv2
89 CAIRO_DEPENDENCIES
+= libgles
91 CAIRO_CONF_OPTS
+= --disable-gl
--disable-glesv2
95 ifeq ($(BR2_PACKAGE_HAS_LIBOPENVG
),y
)
96 CAIRO_CONF_OPTS
+= --enable-vg
97 CAIRO_DEPENDENCIES
+= libopenvg
99 CAIRO_CONF_OPTS
+= --disable-vg
102 ifeq ($(BR2_PACKAGE_LZO
),y
)
103 CAIRO_DEPENDENCIES
+= lzo
106 ifeq ($(BR2_PACKAGE_XORG7
),y
)
107 CAIRO_CONF_OPTS
+= --enable-xlib
--enable-xcb
--with-x
108 CAIRO_DEPENDENCIES
+= xlib_libX11 xlib_libXext
110 CAIRO_CONF_OPTS
+= --disable-xlib
--disable-xcb
--without-x
113 ifeq ($(BR2_PACKAGE_XLIB_LIBXRENDER
),y
)
114 CAIRO_CONF_OPTS
+= --enable-xlib-xrender
115 CAIRO_DEPENDENCIES
+= xlib_libXrender
117 CAIRO_CONF_OPTS
+= --disable-xlib-xrender
120 ifeq ($(BR2_PACKAGE_CAIRO_PS
),y
)
121 CAIRO_CONF_OPTS
+= --enable-ps
122 CAIRO_DEPENDENCIES
+= zlib
124 CAIRO_CONF_OPTS
+= --disable-ps
127 ifeq ($(BR2_PACKAGE_CAIRO_PDF
),y
)
128 CAIRO_CONF_OPTS
+= --enable-pdf
129 CAIRO_DEPENDENCIES
+= zlib
131 CAIRO_CONF_OPTS
+= --disable-pdf
134 ifeq ($(BR2_PACKAGE_CAIRO_PNG
),y
)
135 CAIRO_CONF_OPTS
+= --enable-png
136 CAIRO_DEPENDENCIES
+= libpng
138 CAIRO_CONF_OPTS
+= --disable-png
141 ifeq ($(BR2_PACKAGE_CAIRO_SCRIPT
),y
)
142 CAIRO_CONF_OPTS
+= --enable-script
144 CAIRO_CONF_OPTS
+= --disable-script
147 ifeq ($(BR2_PACKAGE_CAIRO_SVG
),y
)
148 CAIRO_CONF_OPTS
+= --enable-svg
150 CAIRO_CONF_OPTS
+= --disable-svg
153 ifeq ($(BR2_PACKAGE_CAIRO_TEE
),y
)
154 CAIRO_CONF_OPTS
+= --enable-tee
156 CAIRO_CONF_OPTS
+= --disable-tee
159 ifeq ($(BR2_PACKAGE_CAIRO_XML
),y
)
160 CAIRO_CONF_OPTS
+= --enable-xml
162 CAIRO_CONF_OPTS
+= --disable-xml
165 $(eval
$(autotools-package
))
166 $(eval
$(host-autotools-package
))