cairo: more fine grained configutation and fix dependencies
authorPeter Korsgaard <jacmet@sunsite.dk>
Thu, 12 Mar 2009 10:21:21 +0000 (10:21 -0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Thu, 12 Mar 2009 10:21:21 +0000 (10:21 -0000)
package/cairo/Config.in
package/cairo/cairo.mk
package/libgtk2/Config.in

index 2c924cf706dbe580f3961bf816698f6b22662d8a..bd2845b3ca03de187c3ecd525a9cd134a1cc65fe 100644 (file)
@@ -1,11 +1,8 @@
 config BR2_PACKAGE_CAIRO
        bool "cairo"
        select BR2_PACKAGE_PKGCONFIG
-       select BR2_PACKAGE_LIBPNG
-       select BR2_PACKAGE_ZLIB
        select BR2_PACKAGE_PIXMAN
        select BR2_PACKAGE_FONTCONFIG
-       depends on BR2_PACKAGE_XORG||BR2_PACKAGE_XORG7||BR2_PACKAGE_TINYX||BR2_PACKAGE_DIRECTFB
        help
          Cairo is a 2D graphics library with support for multiple
          output devices. Currently supported output targets include
@@ -14,3 +11,24 @@ config BR2_PACKAGE_CAIRO
          OpenGL (through glitz), Quartz, and XCB.
 
          http://cairographics.org/
+
+if BR2_PACKAGE_CAIRO
+
+config BR2_PACKAGE_CAIRO_PS
+       bool "postscript support"
+       select BR2_PACKAGE_ZLIB
+
+config BR2_PACKAGE_CAIRO_PDF
+       bool "pdf support"
+       select BR2_PACKAGE_ZLIB
+
+config BR2_PACKAGE_CAIRO_PNG
+       bool "png support"
+       select BR2_PACKAGE_LIBPNG
+       select BR2_PACKAGE_ZLIB
+
+config BR2_PACKAGE_CAIRO_SVG
+       bool "svg support"
+       select BR2_PACKAGE_CAIRO_PNG
+
+endif
index 99893ea98158328e37f7d0f12306a0b100288853..0814f9cb3f54ed89de0832cd85f03e0393c9d71a 100644 (file)
@@ -42,11 +42,47 @@ CAIRO_CONF_ENV = ac_cv_func_posix_getpwuid_r=yes glib_cv_stack_grows=no \
                ac_cv_path_GLIB_GENMARSHAL=$(HOST_GLIB)/bin/glib-genmarshal
 
 
+CAIRO_DEPENDENCIES = uclibc pkgconfig fontconfig pixman
+
 ifeq ($(BR2_PACKAGE_DIRECTFB),y)
-       CAIRO_CONF_OPT = --disable-xlib --without-x --enable-directfb
-       CAIRO_DEPENDENCIES_EXTRA = directfb
+       CAIRO_CONF_OPT += --enable-directfb
+       CAIRO_DEPENDENCIES += directfb
+else
+       CAIRO_CONF_OPT += --disable-directfb
+endif
+
+ifneq ($(BR2_PACKAGE_XSERVER_none),y)
+       CAIRO_CONF_OPT += --enable-xlib --with-x
+       CAIRO_DEPENDENCIES += $(XSERVER)
+else
+       CAIRO_CONF_OPT += --disable-xlib --without-x
+endif
+
+ifeq ($(BR2_PACKAGE_CAIRO_PS),y)
+       CAIRO_CONF_OPT += --enable-ps
+       CAIRO_DEPENDENCIES += zlib
+else
+       CAIRO_CONF_OPT += --disable-ps
 endif
 
-CAIRO_DEPENDENCIES = uclibc gettext libintl pkgconfig zlib libpng fontconfig $(CAIRO_DEPENDENCIES_EXTRA) pixman $(XSERVER) 
+ifeq ($(BR2_PACKAGE_CAIRO_PDF),y)
+       CAIRO_CONF_OPT += --enable-pdf
+       CAIRO_DEPENDENCIES += zlib
+else
+       CAIRO_CONF_OPT += --disable-pdf
+endif
+
+ifeq ($(BR2_PACKAGE_CAIRO_PNG),y)
+       CAIRO_CONF_OPT += --enable-png
+       CAIRO_DEPENDENCIES += libpng
+else
+       CAIRO_CONF_OPT += --disable-png
+endif
+
+ifeq ($(BR2_PACKAGE_CAIRO_SVG),y)
+       CAIRO_CONF_OPT += --enable-svg
+else
+       CAIRO_CONF_OPT += --disable-svg
+endif
 
 $(eval $(call AUTOTARGETS,package,cairo))
index 9dcf5d53a7e47c1c00184497f9c0d47109c307e8..85d4a49510aa99fabed64980d586a40bf2c57110 100644 (file)
@@ -2,6 +2,8 @@ config BR2_PACKAGE_LIBGTK2
        bool "libgtk2"
        select BR2_PACKAGE_ATK
        select BR2_PACKAGE_CAIRO
+       select BR2_PACKAGE_CAIRO_PS
+       select BR2_PACKAGE_CAIRO_PDF
        select BR2_PACKAGE_LIBGLIB2
        select BR2_PACKAGE_PANGO
        select BR2_PACKAGE_PKGCONFIG