From bcbd1442878dcb73b9c1efaf123651bfb9139dba Mon Sep 17 00:00:00 2001 From: Peter Korsgaard Date: Thu, 12 Mar 2009 10:21:21 +0000 Subject: [PATCH] cairo: more fine grained configutation and fix dependencies --- package/cairo/Config.in | 24 +++++++++++++++++++--- package/cairo/cairo.mk | 42 ++++++++++++++++++++++++++++++++++++--- package/libgtk2/Config.in | 2 ++ 3 files changed, 62 insertions(+), 6 deletions(-) diff --git a/package/cairo/Config.in b/package/cairo/Config.in index 2c924cf706..bd2845b3ca 100644 --- a/package/cairo/Config.in +++ b/package/cairo/Config.in @@ -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 diff --git a/package/cairo/cairo.mk b/package/cairo/cairo.mk index 99893ea981..0814f9cb3f 100644 --- a/package/cairo/cairo.mk +++ b/package/cairo/cairo.mk @@ -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)) diff --git a/package/libgtk2/Config.in b/package/libgtk2/Config.in index 9dcf5d53a7..85d4a49510 100644 --- a/package/libgtk2/Config.in +++ b/package/libgtk2/Config.in @@ -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 -- 2.30.2