xref: /OK3568_Linux_fs/buildroot/package/gdk-pixbuf/gdk-pixbuf.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun################################################################################
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# gdk-pixbuf
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun################################################################################
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunGDK_PIXBUF_VERSION_MAJOR = 2.42
8*4882a593SmuzhiyunGDK_PIXBUF_VERSION = $(GDK_PIXBUF_VERSION_MAJOR).4
9*4882a593SmuzhiyunGDK_PIXBUF_SOURCE = gdk-pixbuf-$(GDK_PIXBUF_VERSION).tar.xz
10*4882a593SmuzhiyunGDK_PIXBUF_SITE = http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/$(GDK_PIXBUF_VERSION_MAJOR)
11*4882a593SmuzhiyunGDK_PIXBUF_LICENSE = LGPL-2.1+
12*4882a593SmuzhiyunGDK_PIXBUF_LICENSE_FILES = COPYING
13*4882a593SmuzhiyunGDK_PIXBUF_CPE_ID_VENDOR = gnome
14*4882a593SmuzhiyunGDK_PIXBUF_INSTALL_STAGING = YES
15*4882a593SmuzhiyunGDK_PIXBUF_DEPENDENCIES = \
16*4882a593Smuzhiyun	host-gdk-pixbuf host-libglib2 host-pkgconf \
17*4882a593Smuzhiyun	libglib2 $(if $(BR2_ENABLE_LOCALE),,libiconv)
18*4882a593SmuzhiyunHOST_GDK_PIXBUF_DEPENDENCIES = host-libpng host-pkgconf host-libglib2
19*4882a593Smuzhiyun
20*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS = \
21*4882a593Smuzhiyun	-Dgio_sniffing=false \
22*4882a593Smuzhiyun	-Dinstalled_tests=false \
23*4882a593Smuzhiyun	-Dman=false
24*4882a593Smuzhiyun
25*4882a593SmuzhiyunHOST_GDK_PIXBUF_CONF_OPTS = \
26*4882a593Smuzhiyun	-Dgio_sniffing=false \
27*4882a593Smuzhiyun	-Dinstalled_tests=false \
28*4882a593Smuzhiyun	-Dintrospection=disabled \
29*4882a593Smuzhiyun	-Dman=false
30*4882a593Smuzhiyun
31*4882a593Smuzhiyunifeq ($(BR2_STATIC_LIBS),y)
32*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Dbuiltin_loaders=all
33*4882a593Smuzhiyunendif
34*4882a593Smuzhiyun
35*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
36*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Dintrospection=enabled
37*4882a593SmuzhiyunGDK_PIXBUF_DEPENDENCIES += gobject-introspection
38*4882a593Smuzhiyunelse
39*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Dintrospection=disabled
40*4882a593Smuzhiyunendif
41*4882a593Smuzhiyun
42*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBPNG),y)
43*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Dpng=true
44*4882a593SmuzhiyunGDK_PIXBUF_DEPENDENCIES += libpng
45*4882a593Smuzhiyunelse
46*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Dpng=false
47*4882a593Smuzhiyunendif
48*4882a593Smuzhiyun
49*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_JPEG),y)
50*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Djpeg=true
51*4882a593SmuzhiyunHOST_GDK_PIXBUF_CONF_OPTS += -Djpeg=true
52*4882a593SmuzhiyunGDK_PIXBUF_DEPENDENCIES += jpeg
53*4882a593SmuzhiyunHOST_GDK_PIXBUF_DEPENDENCIES += host-libjpeg
54*4882a593Smuzhiyunelse
55*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Djpeg=false
56*4882a593SmuzhiyunHOST_GDK_PIXBUF_CONF_OPTS += -Djpeg=false
57*4882a593Smuzhiyunendif
58*4882a593Smuzhiyun
59*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_TIFF),y)
60*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Dtiff=true
61*4882a593SmuzhiyunHOST_GDK_PIXBUF_CONF_OPTS += -Dtiff=true
62*4882a593SmuzhiyunGDK_PIXBUF_DEPENDENCIES += tiff
63*4882a593SmuzhiyunHOST_GDK_PIXBUF_DEPENDENCIES += host-tiff
64*4882a593Smuzhiyunelse
65*4882a593SmuzhiyunGDK_PIXBUF_CONF_OPTS += -Dtiff=false
66*4882a593SmuzhiyunHOST_GDK_PIXBUF_CONF_OPTS += -Dtiff=false
67*4882a593Smuzhiyunendif
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun# gdk-pixbuf requires the loaders.cache file populated to work properly
70*4882a593Smuzhiyun# Rather than doing so at runtime, since the fs can be read-only, do so
71*4882a593Smuzhiyun# here after building and installing to target.
72*4882a593Smuzhiyun# And since the cache file will contain absolute host directory names we
73*4882a593Smuzhiyun# need to sanitize (strip) them.
74*4882a593Smuzhiyunifeq ($(BR2_STATIC_LIBS),)
75*4882a593Smuzhiyundefine GDK_PIXBUF_UPDATE_CACHE
76*4882a593Smuzhiyun	GDK_PIXBUF_MODULEDIR=$(HOST_DIR)/lib/gdk-pixbuf-2.0/2.10.0/loaders \
77*4882a593Smuzhiyun		$(HOST_DIR)/bin/gdk-pixbuf-query-loaders \
78*4882a593Smuzhiyun		> $(TARGET_DIR)/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
79*4882a593Smuzhiyun	$(SED) "s,$(HOST_DIR)/lib,/usr/lib,g" \
80*4882a593Smuzhiyun		$(TARGET_DIR)/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
81*4882a593Smuzhiyunendef
82*4882a593SmuzhiyunGDK_PIXBUF_POST_INSTALL_TARGET_HOOKS += GDK_PIXBUF_UPDATE_CACHE
83*4882a593Smuzhiyunendif
84*4882a593Smuzhiyun
85*4882a593Smuzhiyun# Target gdk-pixbuf needs loaders.cache populated to build for the
86*4882a593Smuzhiyun# thumbnailer. Use the host-built since it matches the target options
87*4882a593Smuzhiyun# regarding mime types (which is the used information).
88*4882a593Smuzhiyundefine GDK_PIXBUF_COPY_LOADERS_CACHE
89*4882a593Smuzhiyun	cp -f $(HOST_DIR)/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \
90*4882a593Smuzhiyun		$(@D)/gdk-pixbuf
91*4882a593Smuzhiyunendef
92*4882a593SmuzhiyunGDK_PIXBUF_PRE_BUILD_HOOKS += GDK_PIXBUF_COPY_LOADERS_CACHE
93*4882a593Smuzhiyun
94*4882a593Smuzhiyun$(eval $(meson-package))
95*4882a593Smuzhiyun$(eval $(host-meson-package))
96