summaryrefslogtreecommitdiff
path: root/source/l/pango
diff options
context:
space:
mode:
Diffstat (limited to 'source/l/pango')
-rwxr-xr-xsource/l/pango/pango.SlackBuild139
-rw-r--r--source/l/pango/pango.etc.host.location.diff33
-rw-r--r--source/l/pango/slack-desc19
-rw-r--r--source/l/pango/update-pango-querymodules85
4 files changed, 276 insertions, 0 deletions
diff --git a/source/l/pango/pango.SlackBuild b/source/l/pango/pango.SlackBuild
new file mode 100755
index 00000000..79234a74
--- /dev/null
+++ b/source/l/pango/pango.SlackBuild
@@ -0,0 +1,139 @@
+#!/bin/sh
+
+# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+VERSION=1.22.4
+ARCH=${ARCH:-x86_64}
+BUILD=${BUILD:-4}
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-pango
+rm -rf $PKG
+mkdir -p $TMP $PKG/usr
+
+cd $TMP
+rm -rf pango-$VERSION
+tar xvf $CWD/pango-$VERSION.tar.bz2 || exit 1
+cd pango-$VERSION
+# Fix for x86_64 (does not hurt the other archs but note that we will start
+# using /etc/pango/$host instead of /etc/pango/ now):
+zcat $CWD/pango.etc.host.location.diff.gz | patch -p1 --verbose || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Autoconf changes linux to linux-gnu.
+# Our host is $ARCH-slackware-linux not $ARCH-slackware-linux-gnu:
+sed -i -e 's#linux|linux-gnu|#linux|linux|#' config.sub
+
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/pango-$VERSION \
+ --build=$ARCH-slackware-linux \
+ --host=$ARCH-slackware-linux \
+ --target=$ARCH-slackware-linux
+
+make $NUMJOBS || make || exit 1
+
+# Check the host value that is passed to the compile to the one in this script:
+host="$ARCH-slackware-linux"
+compile_host=$(grep 'host_triplet =' pango/Makefile | sed "s/.* = //")
+if [ "x$compile_host" != "x$host" ]; then
+ echo "Host mismatch: compile='$compile_host', SlackBuild='$host'" && exit 1
+fi
+
+make install DESTDIR=$PKG || exit 1
+
+# Install wrapper for pango-querymodules:
+cp $CWD/update-pango-querymodules $PKG/usr/bin/update-pango-querymodules
+chmod 0755 $PKG/usr/bin/update-pango-querymodules
+
+# Do not remove pangox.aliases
+rm -f $PKG/etc/pango/pango.modules
+mkdir -p $PKG/etc/pango/$host
+touch $PKG/etc/pango/$host/pango.modules
+
+# We need to have separate 32-bit and 64-bit binaries
+# for places where we have two copies of the GTK+ package installed.
+# (we might have x86_64 and i486 packages on the same system, for example.)
+case "$host" in
+ s390x*|x86_64*)
+ mv $PKG/usr/bin/pango-querymodules $PKG/usr/bin/pango-querymodules-64
+ ( cd $PKG/usr/bin ; ln -sf pango-querymodules-64 pango-querymodules )
+ ;;
+ *)
+ mv $PKG/usr/bin/pango-querymodules $PKG/usr/bin/pango-querymodules-32
+ ( cd $PKG/usr/bin ; ln -sf pango-querymodules-32 pango-querymodules )
+ ;;
+esac
+
+mkdir -p $PKG/install
+cat <<EOF > $PKG/install/doinst.sh
+# Updating the pango.modules file:
+chroot . /sbin/ldconfig 2> /dev/null
+if [ -x /usr/bin/update-pango-querymodules ]; then
+ /usr/bin/update-pango-querymodules
+fi
+EOF
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+( cd $PKG/usr/man
+ find . -type f -exec gzip -9 {} \;
+ for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
+)
+
+mkdir -p $PKG/usr/doc/pango-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS README TODO \
+ $PKG/usr/doc/pango-$VERSION
+ln -s /usr/share/gtk-doc/html/pango $PKG/usr/doc/pango-$VERSION/html
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n --prepend $TMP/pango-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/pango/pango.etc.host.location.diff b/source/l/pango/pango.etc.host.location.diff
new file mode 100644
index 00000000..bb5a26db
--- /dev/null
+++ b/source/l/pango/pango.etc.host.location.diff
@@ -0,0 +1,33 @@
+diff -uarN pango-1.22.4.orig/pango/Makefile.am pango-1.22.4/pango/Makefile.am
+--- pango-1.22.4.orig/pango/Makefile.am 2008-12-16 07:14:00.000000000 +0100
++++ pango-1.22.4/pango/Makefile.am 2009-03-04 23:58:26.000000000 +0100
+@@ -19,6 +19,7 @@
+ -DPANGO_ENABLE_BACKEND \
+ -DPANGO_ENABLE_ENGINE \
+ -DSYSCONFDIR=\"$(sysconfdir)\" \
++ -DHOST=\"$(host_triplet)\" \
+ -DLIBDIR=\"$(libdir)\" \
+ -I$(top_srcdir) \
+ $(PANGO_DEBUG_FLAGS) \
+diff -uarN pango-1.22.4.orig/pango/Makefile.in pango-1.22.4/pango/Makefile.in
+--- pango-1.22.4.orig/pango/Makefile.in 2008-12-16 07:14:36.000000000 +0100
++++ pango-1.22.4/pango/Makefile.in 2009-03-04 23:58:26.000000000 +0100
+@@ -427,6 +427,7 @@
+ -DPANGO_ENABLE_BACKEND \
+ -DPANGO_ENABLE_ENGINE \
+ -DSYSCONFDIR=\"$(sysconfdir)\" \
++ -DHOST=\"$(host_triplet)\" \
+ -DLIBDIR=\"$(libdir)\" \
+ -I$(top_srcdir) \
+ $(PANGO_DEBUG_FLAGS) \
+diff -uarN pango-1.22.4.orig/pango/modules.c pango-1.22.4/pango/modules.c
+--- pango-1.22.4.orig/pango/modules.c 2008-12-16 07:14:00.000000000 +0100
++++ pango-1.22.4/pango/modules.c 2009-03-04 23:58:26.000000000 +0100
+@@ -508,6 +508,7 @@
+
+ if (!file_str)
+ file_str = g_build_filename (pango_get_sysconf_subdirectory (),
++ HOST,
+ "pango.modules",
+ NULL);
+
diff --git a/source/l/pango/slack-desc b/source/l/pango/slack-desc
new file mode 100644
index 00000000..31be0ffe
--- /dev/null
+++ b/source/l/pango/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+pango: pango (library for layout and rendering of text)
+pango:
+pango: Pango is a library for layout and rendering of text, with an emphasis
+pango: on internationalization. Pango can be used anywhere that text layout
+pango: is needed; however, most of the work on Pango was done using the GTK+
+pango: widget toolkit as a test platform. Pango forms the core of text and
+pango: font handling for GTK+-2.
+pango:
+pango:
+pango:
+pango:
diff --git a/source/l/pango/update-pango-querymodules b/source/l/pango/update-pango-querymodules
new file mode 100644
index 00000000..5aefa034
--- /dev/null
+++ b/source/l/pango/update-pango-querymodules
@@ -0,0 +1,85 @@
+#! /bin/sh
+# Updates the pango.modules in /etc/pango/$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/pango/$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/pango/$host ]; then
+ case "$host" in
+ i?86*)
+ for d in $(ls -d /etc/pango/i?86*); do
+ host=$(basename $d)
+ break
+ done
+ ;;
+ esac
+fi
+
+FILE=/etc/pango/$host/pango.modules
+
+case "$host" in
+ s390x*|x86_64*)
+ if [ -x /usr/bin/pango-querymodules-64 ]; then
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating pango.modules for ${host}:"
+ echo " /usr/bin/pango-querymodules-64 \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/pango-querymodules-64 > $FILE
+ # Check for x86_64 multilib:
+ if ls -d /etc/pango/i?86* 1> /dev/null 2> /dev/null ; then
+ for d in $(ls -d /etc/pango/i?86*); do
+ mlhost=$(basename $d)
+ break
+ done
+ if [ -r /etc/pango/$mlhost/pango.modules -a -x /usr/bin/pango-querymodules-32 ]; then
+ FILE=/etc/pango/$mlhost/pango.modules
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating pango.modules for ${mlhost}:"
+ echo " /usr/bin/pango-querymodules-32 \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/pango-querymodules-32 > $FILE
+ fi
+ fi
+ else
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating pango.modules for ${host}:"
+ echo " /usr/bin/pango-querymodules \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/pango-querymodules > $FILE
+ fi
+ ;;
+ *)
+ if [ -x /usr/bin/pango-querymodules-32 ]; then
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating pango.modules for ${host}:"
+ echo " /usr/bin/pango-querymodules-32 \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/pango-querymodules-32 > $FILE
+ else
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating pango.modules for ${host}:"
+ echo " /usr/bin/pango-querymodules \\"
+ echo " > $FILE"
+ fi
+ /usr/bin/pango-querymodules > $FILE
+ fi
+ ;;
+esac
+