mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 12:59:02 +02:00
gdk-pixbuf: move gdk-pixbuf-query-loaders to $libdir for multilib safety
If for example gdk-pixbuf and lib32-gdk-pixbuf are in an image then only one ${bindir}/gdk-pixbuf-query-loaders will be installed, so only one variant will actually be usable. Solve this by moving gdk-pixbuf-query-loaders into ${libdir} as it's intimately tied to the library and rarely directly invoked by the user, and update the callers to use the right path. (From OE-Core rev: 69df75f268e2b3d5874f05e2b5a6125f6d990a03) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
b0707780fb
commit
8a12632e97
|
@ -4,12 +4,14 @@ DEPENDS += "${@['hicolor-icon-theme', '']['${BPN}' == 'hicolor-icon-theme']} gtk
|
|||
|
||||
gtk_icon_cache_postinst() {
|
||||
if [ "x$D" != "x" ]; then
|
||||
$INTERCEPT_DIR/postinst_intercept update_icon_cache ${PKG} mlprefix=${MLPREFIX} libdir=${libdir} \
|
||||
base_libdir=${base_libdir}
|
||||
$INTERCEPT_DIR/postinst_intercept update_icon_cache ${PKG} \
|
||||
mlprefix=${MLPREFIX} \
|
||||
libdir=${libdir} \
|
||||
STAGING_LIBDIR_NATIVE=${STAGING_LIBDIR_NATIVE}
|
||||
else
|
||||
|
||||
# Update the pixbuf loaders in case they haven't been registered yet
|
||||
GDK_PIXBUF_MODULEDIR=${libdir}/gdk-pixbuf-2.0/2.10.0/loaders gdk-pixbuf-query-loaders --update-cache
|
||||
GDK_PIXBUF_MODULEDIR=${libdir}/gdk-pixbuf-2.0/2.10.0/loaders ${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders --update-cache
|
||||
|
||||
for icondir in /usr/share/icons/* ; do
|
||||
if [ -d $icondir ] ; then
|
||||
|
@ -21,8 +23,10 @@ fi
|
|||
|
||||
gtk_icon_cache_postrm() {
|
||||
if [ "x$D" != "x" ]; then
|
||||
$INTERCEPT_DIR/postinst_intercept update_icon_cache ${PKG} mlprefix=${MLPREFIX} libdir=${libdir} \
|
||||
base_libdir=${base_libdir}
|
||||
$INTERCEPT_DIR/postinst_intercept update_icon_cache ${PKG} \
|
||||
mlprefix=${MLPREFIX} \
|
||||
libdir=${libdir} \
|
||||
STAGING_LIBDIR_NATIVE=${STAGING_LIBDIR_NATIVE}
|
||||
else
|
||||
for icondir in /usr/share/icons/* ; do
|
||||
if [ -d $icondir ] ; then
|
||||
|
|
|
@ -15,7 +15,7 @@ if [ "x$D" != "x" ]; then
|
|||
else
|
||||
|
||||
# Update the pixbuf loaders in case they haven't been registered yet
|
||||
GDK_PIXBUF_MODULEDIR=${libdir}/gdk-pixbuf-2.0/2.10.0/loaders gdk-pixbuf-query-loaders --update-cache
|
||||
GDK_PIXBUF_MODULEDIR=${libdir}/gdk-pixbuf-2.0/2.10.0/loaders ${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders --update-cache
|
||||
|
||||
if [ -x ${bindir}/gtk-update-icon-cache ] && [ -d ${datadir}/icons ]; then
|
||||
for icondir in /usr/share/icons/*; do
|
||||
|
@ -46,7 +46,7 @@ python populate_packages_append() {
|
|||
}
|
||||
|
||||
gdkpixbuf_complete() {
|
||||
GDK_PIXBUF_FATAL_LOADER=1 ${STAGING_BINDIR_NATIVE}/gdk-pixbuf-query-loaders --update-cache || exit 1
|
||||
GDK_PIXBUF_FATAL_LOADER=1 ${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders --update-cache || exit 1
|
||||
}
|
||||
|
||||
#
|
||||
|
|
|
@ -49,7 +49,7 @@ PACKAGES =+ "${PN}-xlib"
|
|||
FILES_${PN}-xlib = "${libdir}/*pixbuf_xlib*${SOLIBS}"
|
||||
ALLOW_EMPTY_${PN}-xlib = "1"
|
||||
|
||||
FILES_${PN} = "${bindir}/gdk-pixbuf-query-loaders \
|
||||
FILES_${PN} = "${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders \
|
||||
${libdir}/lib*.so.*"
|
||||
|
||||
FILES_${PN}-dev += " \
|
||||
|
@ -61,6 +61,7 @@ FILES_${PN}-dev += " \
|
|||
|
||||
FILES_${PN}-dbg += " \
|
||||
${libdir}/.debug/* \
|
||||
${libdir}/gdk-pixbuf-2.0/.debug/* \
|
||||
${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders/.debug/* \
|
||||
"
|
||||
|
||||
|
@ -80,6 +81,12 @@ python populate_packages_prepend () {
|
|||
d.appendVar("RDEPENDS_gdk-pixbuf-ptest", " " + packages)
|
||||
}
|
||||
|
||||
do_install_append() {
|
||||
# Move gdk-pixbuf-query-loaders into libdir so it is always available
|
||||
# in multilib builds.
|
||||
mv ${D}/${bindir}/gdk-pixbuf-query-loaders ${D}/${libdir}/gdk-pixbuf-2.0/
|
||||
}
|
||||
|
||||
do_install_append_class-native() {
|
||||
find ${D}${libdir} -name "libpixbufloader-*.la" -exec rm \{\} \;
|
||||
|
||||
|
@ -89,7 +96,7 @@ do_install_append_class-native() {
|
|||
create_wrapper ${D}/${bindir}/gdk-pixbuf-pixdata \
|
||||
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache
|
||||
|
||||
create_wrapper ${D}/${bindir}/gdk-pixbuf-query-loaders \
|
||||
create_wrapper ${D}/${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders \
|
||||
GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders.cache \
|
||||
GDK_PIXBUF_MODULEDIR=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/${LIBV}/loaders
|
||||
}
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
# update native pixbuf loaders
|
||||
gdk-pixbuf-query-loaders --update-cache
|
||||
${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders --update-cache
|
||||
|
||||
for icondir in $D/usr/share/icons/*/ ; do
|
||||
if [ -d $icondir ] ; then
|
||||
|
|
|
@ -4,8 +4,6 @@ export GDK_PIXBUF_MODULEDIR=$D${libdir}/gdk-pixbuf-2.0/2.10.0/loaders
|
|||
export GDK_PIXBUF_FATAL_LOADER=1
|
||||
|
||||
PSEUDO_UNLOAD=1 qemuwrapper -L $D -E LD_LIBRARY_PATH=$D/${libdir}:$D/${base_libdir}\
|
||||
$D${bindir}/gdk-pixbuf-query-loaders \
|
||||
$D${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders \
|
||||
>$GDK_PIXBUF_MODULEDIR/../loaders.cache && \
|
||||
sed -i -e "s:$D::g" $GDK_PIXBUF_MODULEDIR/../loaders.cache
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user