summaryrefslogtreecommitdiffstats
path: root/source/l/gtk+2/update-gdk-pixbuf-loaders
diff options
context:
space:
mode:
Diffstat (limited to 'source/l/gtk+2/update-gdk-pixbuf-loaders')
-rw-r--r--source/l/gtk+2/update-gdk-pixbuf-loaders86
1 files changed, 86 insertions, 0 deletions
diff --git a/source/l/gtk+2/update-gdk-pixbuf-loaders b/source/l/gtk+2/update-gdk-pixbuf-loaders
new file mode 100644
index 000000000..942ca1862
--- /dev/null
+++ b/source/l/gtk+2/update-gdk-pixbuf-loaders
@@ -0,0 +1,86 @@
+#! /bin/sh
+# Updates the gdk-pixbuf.loaders in /etc/gtk-2.0/$host
+
+umask 022
+
+# Get the machine type from uname:
+host=$(uname -m)-slackware-linux
+
+# Fix $host for arm arch:
+case "$host" in
+ arm*) host=arm-slackware-linux-gnueabi ;;
+esac
+
+# Deriving /etc/gtk-2.0/$host location
+#
+# We have had problems in the past with build systems
+# changing host from i386 to i686 and appending/dropping
+# the -gnu suffix, so try to match up the $host we got
+# with whats actually there.
+if [ ! -d /etc/gtk-2.0/$host ]; then
+ case "$host" in
+ i?86*)
+ for d in $(ls -d /etc/gtk-2.0/i?86*); do
+ host=$(basename $d)
+ break
+ done
+ ;;
+ esac
+fi
+
+FILE=/etc/gtk-2.0/$host/gdk-pixbuf.loaders
+
+case "$host" in
+ s390x*|x86_64*)
+ if [ -x /usr/bin/gdk-pixbuf-query-loaders-64 ]; then
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating gdk-pixbuf.loaders for ${host}:"
+ echo " /usr/bin/gdk-pixbuf-query-loaders-64 \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/gdk-pixbuf-query-loaders-64 > $FILE
+ # Check for x86_64 multilib:
+ if ls -d /etc/gtk-2.0/i?86* 1> /dev/null 2> /dev/null ; then
+ for d in $(ls -d /etc/gtk-2.0/i?86*); do
+ mlhost=$(basename $d)
+ break
+ done
+ if [ -r /etc/gtk-2.0/$mlhost/gdk-pixbuf.loaders -a \
+ -x /usr/bin/gdk-pixbuf-query-loaders-32 ]; then
+ FILE=/etc/gtk-2.0/$mlhost/gdk-pixbuf.loaders
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating gdk-pixbuf.loaders for ${mlhost}:"
+ echo " /usr/bin/gdk-pixbuf-query-loaders-32 \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/gdk-pixbuf-query-loaders-32 > $FILE
+ fi
+ fi
+ else
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating gdk-pixbuf.loaders for ${host}:"
+ echo " /usr/bin/gdk-pixbuf-query-loaders \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/gdk-pixbuf-query-loaders > $FILE
+ fi
+ ;;
+ *)
+ if [ -x /usr/bin/gdk-pixbuf-query-loaders-32 ]; then
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating gdk-pixbuf.loaders for ${host}:"
+ echo " /usr/bin/gdk-pixbuf-query-loaders-32 \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/gdk-pixbuf-query-loaders-32 > $FILE
+ else
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating gdk-pixbuf.loaders for ${host}:"
+ echo " /usr/bin/gdk-pixbuf-query-loaders \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/gdk-pixbuf-query-loaders > $FILE
+ fi
+ ;;
+esac
+