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