* [Buildroot] [PATCH 1/2] tiff: add host variant
@ 2016-04-05 23:31 Gustavo Zacarias
2016-04-05 23:31 ` [Buildroot] [PATCH 2/2] gdk-pixbuf: use host loaders to update the cache Gustavo Zacarias
2016-04-15 18:24 ` [Buildroot] [PATCH 1/2] tiff: add host variant Peter Korsgaard
0 siblings, 2 replies; 4+ messages in thread
From: Gustavo Zacarias @ 2016-04-05 23:31 UTC (permalink / raw)
To: buildroot
Add host variant to be used by host-gdk-pixbuf to update the loaders
cache.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
package/tiff/tiff.mk | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/package/tiff/tiff.mk b/package/tiff/tiff.mk
index 266272a..a53d7bb 100644
--- a/package/tiff/tiff.mk
+++ b/package/tiff/tiff.mk
@@ -15,6 +15,14 @@ TIFF_CONF_OPTS = \
TIFF_DEPENDENCIES = host-pkgconf
+HOST_TIFF_CONF_OPTS = \
+ --disable-cxx \
+ --without-x \
+ --disable-zlib \
+ --disable-lzma \
+ --disable-jpeg
+HOST_TIFF_DEPENDENCIES = host-pkgconf
+
ifneq ($(BR2_PACKAGE_TIFF_CCITT),y)
TIFF_CONF_OPTS += --disable-ccitt
endif
@@ -81,3 +89,4 @@ endif
TIFF_MAKE = $(MAKE) SUBDIRS="$(TIFF_SUBDIRS)"
$(eval $(autotools-package))
+$(eval $(host-autotools-package))
--
2.7.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 2/2] gdk-pixbuf: use host loaders to update the cache
2016-04-05 23:31 [Buildroot] [PATCH 1/2] tiff: add host variant Gustavo Zacarias
@ 2016-04-05 23:31 ` Gustavo Zacarias
2016-04-15 18:24 ` Peter Korsgaard
2016-04-15 18:24 ` [Buildroot] [PATCH 1/2] tiff: add host variant Peter Korsgaard
1 sibling, 1 reply; 4+ messages in thread
From: Gustavo Zacarias @ 2016-04-05 23:31 UTC (permalink / raw)
To: buildroot
Unfortunately gdk-pixbuf-query-loaders doesn't understand cross loaders
to update the cache, hence we can't use the host variant against target
loaders since it will output an effectively empty cache, causing runtime
failure of libgtk when finding icons.
So make host-gdk-pixbuf functionally equivalent to the target gdk-pixbuf
so we can run gdk-pixbuf-query-loaders against the host plugins and just
strip the host directory to make it runtime-compatible (like was done
before for the target directory).
This is still better than trying to update at runtime, since that would
require a writable loaders.cache file in tmpfs or rw filesystem, not to
mention the associated additional startup time.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
package/gdk-pixbuf/gdk-pixbuf.mk | 22 ++++++++++------------
1 file changed, 10 insertions(+), 12 deletions(-)
diff --git a/package/gdk-pixbuf/gdk-pixbuf.mk b/package/gdk-pixbuf/gdk-pixbuf.mk
index 03594d8..36eed60 100644
--- a/package/gdk-pixbuf/gdk-pixbuf.mk
+++ b/package/gdk-pixbuf/gdk-pixbuf.mk
@@ -14,6 +14,7 @@ GDK_PIXBUF_INSTALL_STAGING = YES
GDK_PIXBUF_DEPENDENCIES = \
host-gdk-pixbuf host-libglib2 host-pkgconf \
libglib2 $(if $(BR2_ENABLE_LOCALE),,libiconv)
+HOST_GDK_PIXBUF_DEPENDENCIES = host-libpng host-pkgconf host-libglib2
GDK_PIXBUF_CONF_ENV = \
ac_cv_path_GLIB_GENMARSHAL=$(LIBGLIB2_HOST_BINARY) \
@@ -28,17 +29,21 @@ GDK_PIXBUF_DEPENDENCIES += libpng
endif
ifneq ($(BR2_PACKAGE_JPEG),y)
+HOST_GDK_PIXBUF_CONF_OPTS += --without-libjpeg
GDK_PIXBUF_CONF_OPTS += --without-libjpeg
else
GDK_PIXBUF_DEPENDENCIES += jpeg
+HOST_GDK_PIXBUF_DEPENDENCIES += host-libjpeg
endif
ifneq ($(BR2_PACKAGE_TIFF),y)
GDK_PIXBUF_CONF_OPTS += --without-libtiff
+HOST_GDK_PIXBUF_CONF_OPTS += --without-libtiff
else
-GDK_PIXBUF_DEPENDENCIES += tiff host-pkgconf
+GDK_PIXBUF_DEPENDENCIES += tiff
GDK_PIXBUF_CONF_ENV += \
LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libtiff-4`"
+HOST_GDK_PIXBUF_DEPENDENCIES += host-tiff
endif
ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y)
@@ -49,14 +54,14 @@ endif
# gdk-pixbuf requires the loaders.cache file populated to work properly
# Rather than doing so at runtime, since the fs can be read-only, do so
# here after building and installing to target.
-# And since the cache file will contain absolute target directory names
-# we need to sanitize (strip) them.
+# And since the cache file will contain absolute host directory names we
+# need to sanitize (strip) them.
ifeq ($(BR2_STATIC_LIBS),)
define GDK_PIXBUF_UPDATE_CACHE
- GDK_PIXBUF_MODULEDIR=$(TARGET_DIR)/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders \
+ GDK_PIXBUF_MODULEDIR=$(HOST_DIR)/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders \
$(HOST_DIR)/usr/bin/gdk-pixbuf-query-loaders \
> $(TARGET_DIR)/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
- $(SED) "s,$(TARGET_DIR),,g" \
+ $(SED) "s,$(HOST_DIR),,g" \
$(TARGET_DIR)/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
endef
GDK_PIXBUF_POST_INSTALL_TARGET_HOOKS += GDK_PIXBUF_UPDATE_CACHE
@@ -69,11 +74,4 @@ endef
GDK_PIXBUF_POST_PATCH_HOOKS += GDK_PIXBUF_DISABLE_TESTS
$(eval $(autotools-package))
-
-HOST_GDK_PIXBUF_CONF_OPTS = \
- --without-libjpeg \
- --without-libtiff
-
-HOST_GDK_PIXBUF_DEPENDENCIES = host-libpng host-pkgconf host-libglib2
-
$(eval $(host-autotools-package))
--
2.7.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 1/2] tiff: add host variant
2016-04-05 23:31 [Buildroot] [PATCH 1/2] tiff: add host variant Gustavo Zacarias
2016-04-05 23:31 ` [Buildroot] [PATCH 2/2] gdk-pixbuf: use host loaders to update the cache Gustavo Zacarias
@ 2016-04-15 18:24 ` Peter Korsgaard
1 sibling, 0 replies; 4+ messages in thread
From: Peter Korsgaard @ 2016-04-15 18:24 UTC (permalink / raw)
To: buildroot
>>>>> "Gustavo" == Gustavo Zacarias <gustavo@zacarias.com.ar> writes:
> Add host variant to be used by host-gdk-pixbuf to update the loaders
> cache.
> Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Committed, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 2/2] gdk-pixbuf: use host loaders to update the cache
2016-04-05 23:31 ` [Buildroot] [PATCH 2/2] gdk-pixbuf: use host loaders to update the cache Gustavo Zacarias
@ 2016-04-15 18:24 ` Peter Korsgaard
0 siblings, 0 replies; 4+ messages in thread
From: Peter Korsgaard @ 2016-04-15 18:24 UTC (permalink / raw)
To: buildroot
>>>>> "Gustavo" == Gustavo Zacarias <gustavo@zacarias.com.ar> writes:
> Unfortunately gdk-pixbuf-query-loaders doesn't understand cross loaders
> to update the cache, hence we can't use the host variant against target
> loaders since it will output an effectively empty cache, causing runtime
> failure of libgtk when finding icons.
> So make host-gdk-pixbuf functionally equivalent to the target gdk-pixbuf
> so we can run gdk-pixbuf-query-loaders against the host plugins and just
> strip the host directory to make it runtime-compatible (like was done
> before for the target directory).
> This is still better than trying to update at runtime, since that would
> require a writable loaders.cache file in tmpfs or rw filesystem, not to
> mention the associated additional startup time.
> Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Committed, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2016-04-15 18:24 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-05 23:31 [Buildroot] [PATCH 1/2] tiff: add host variant Gustavo Zacarias
2016-04-05 23:31 ` [Buildroot] [PATCH 2/2] gdk-pixbuf: use host loaders to update the cache Gustavo Zacarias
2016-04-15 18:24 ` Peter Korsgaard
2016-04-15 18:24 ` [Buildroot] [PATCH 1/2] tiff: add host variant Peter Korsgaard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox