summaryrefslogtreecommitdiffstats
path: root/libreoffice/build/libreoffice36.SlackBuild
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2010-10-23 15:14:34 +0000
committer Eric Hameleers <alien@slackware.com>2010-10-23 15:14:34 +0000
commitd457230386a1b350759819808b5d46af49cd152f (patch)
tree9930dfc7171c57fe805fcb28a6fac9a15de62779 /libreoffice/build/libreoffice36.SlackBuild
parentb98209cbc24941f69e77c44b2055765cb72cabbe (diff)
downloadasb-d457230386a1b350759819808b5d46af49cd152f.tar.gz
asb-d457230386a1b350759819808b5d46af49cd152f.tar.xz
Let's try to create language packs!
Diffstat (limited to 'libreoffice/build/libreoffice36.SlackBuild')
-rwxr-xr-xlibreoffice/build/libreoffice36.SlackBuild65
1 files changed, 52 insertions, 13 deletions
diff --git a/libreoffice/build/libreoffice36.SlackBuild b/libreoffice/build/libreoffice36.SlackBuild
index 43c1c328..63b4355f 100755
--- a/libreoffice/build/libreoffice36.SlackBuild
+++ b/libreoffice/build/libreoffice36.SlackBuild
@@ -39,10 +39,10 @@
# so that the package version will be like "3.2.99.2_20101012".
# Remove the slack-required file, since this package has no
# run-time dependencies any more.
-# 20101013-1: 13/oct/2010 by Eric Hameleers <alien@slackware.com>
+# 20101023-1: 23/oct/2010 by Eric Hameleers <alien@slackware.com>
# * Fix permissions of LICENSE.odt file.
-# Add additional (non-english) language support - code taken from
-# GnomeSlackBuild project's openoffice3.SlackBuild script.
+# Add additional (non-english) language support - some code taken
+# from GnomeSlackBuild's openoffice3.SlackBuild script.
#
# Run 'sh libreoffice.SlackBuild' to build a Slackware package.
# The package (.tgz) and .txt file as well as build logs are created in /tmp .
@@ -53,7 +53,7 @@
# Set initial variables:
PRGNAM=libreoffice
-#SRCVER=${SRCVER:-20101013}
+#SRCVER=${SRCVER:-20101023}
SRCVER=${SRCVER:-HEAD}
[ "$SRCVER" = "HEAD" ] && VERSION=$(date +%Y%m%d) || VERSION=$SRCVER
BUILD=${BUILD:-1}
@@ -64,11 +64,12 @@ DOCS="AUTHORS COPYING* MAINTAINERS NEWS README* TODO TOTEST"
# Select default langue for the libreoffice package:
DEF_LANG=${DEF_LANG:-"en-US"}
-# Should we generate additional language packs:
-ADD_LANGUAGES=${ADD_LANGUAGES:-"YES"}
-
-# We keep languages plus their descriptive names in an external file:
-LANGUAGES="$(cat $SRCDIR/languages |cut -f1 -d= |tr '\n' ' ' |tr -s ' ' |sed -e 's/ *$//')"
+# If this variable is non-empty, we will build additional languuage packs;
+# otherwise LibreOffice will be built for one language, defined in DEF_LANG:
+# By the way:
+# The languages plus their descriptive names are kept in an external file
+# called 'languages' in the same directory, edit that one if you want:
+ADD_LANGUAGES="$(cat $SRCDIR/languages |cut -f1 -d= |tr '\n' ' ' |tr -s ' ' |sed -e 's/ *$//')"
# Where do we look for sources?
SRCDIR=$(cd $(dirname $0); pwd)
@@ -254,10 +255,10 @@ cat $SRCDIR/Slackware.conf.in > distro-configs/Slackware.conf.in
mkdir -p /usr/share/openclipart
# Do we generate language packs?
-if [ "$ADD_LANGUAGES" != "YES" ]; then
+if [ -z "$ADD_LANGUAGES" ]; then
LANGUAGES="$DEF_LANG"
else
- LANGUAGES="${DEF_LANG} $(echo ${LANGUAGES} |sed -e 's/${DEF_LANG} *//')"
+ LANGUAGES="${DEF_LANG} $(echo ${ADD_LANGUAGES} |sed -e 's/${DEF_LANG} *//')"
fi
enable_pam=no \
@@ -310,8 +311,46 @@ fi
# Fix permissions of a license file:
chmod 0644 $PKG/usr/lib${LIBDIRSUFFIX}/${PRGNAM}/LICENSE.odt
-# Add this to the doinst.sh:
+# Split out language packs if we have built additional languages:
+if [ ! -z "${ADD_LANGUAGES}" ]; then
+ cd $PKG
+ for lang in "$(echo ${ADD_LANGUAGES} |sed -e 's/${DEF_LANG} *//')" ; do
+ langdesc="$(grep ^${lang}= $SRCDIR/languages |cut -f2 -d=)"
+ mkdir -p ${PKG}-l10n-$lang
+ tar cf - --remove-files \
+ $(find . -name "README*$lang*" \
+ -o -name "LICENSE*${lang}*" \
+ -o -type d -name "${lang}" \
+ -o -name "Lang_*${lang}.xba" \
+ -o -name "Langpack-${lang}.xcu" \
+ -o -name "*${lang}.oxt") \
+ | ( cd ${PKG}-l10n-$lang ; tar xf - )
+ mkdir -p ${PKG}-l10n-$lang/install
+ cat $SRCDIR/slack-desc.l10n \
+ | sed -e "s/@LANG@/$lang/g" -e "s/@LANGDESC@/$langdesc/g" > \
+ ${PKG}-l10n-$lang/install/slack-desc
+ # Install per-language dictionary:
+ cat $SRCDIR/doinst.sh.l10n \
+ | sed -e "s/@LIBDIRSUFFIX@/${LIBDIRSUFFIX}/g" \
+ -e "s/@LANG@/${lang}/g" -e "s/@PRGNAM@/$PRGNAM/" \
+ > ${PKG}-l10n-$lang/install/doinst.sh
+ cd ${PKG}-l10n-$lang
+ /sbin/makepkg -p -l y -c n $OUTPUT/${PRGNAM}-l10n-${lang}-${LOVER}_${VERSION}-noarch-${BUILD}${TAG}.${PKGTYPE:-txz}
+ cd -
+ cd $OUTPUT
+ md5sum ${PRGNAM}-l10n-${lang}-${LOVER}_${VERSION}-noarch-${BUILD}${TAG}.${PKGTYPE:-txz} > ${PRGNAM}-l10n-$lang-${LOVER}_${VERSION}-noarch-${BUILD}${TAG}.${PKGTYPE:-txz}.md5
+ cd -
+ cat $PKG-l10n-$lang/install/slack-desc | grep "^${PRGNAM}-l10n-$lang" > $OUTPUT/${PRGNAM}-l10n-$lang-${LOVER}_${VERSION}-noarch-${BUILD}${TAG}.txt
+ done
+fi # End of splitting out langiage packs
+
+# Create the package's post-install script:
mkdir -p $PKG/install
+# Install language dictionary:
+cat $SRCDIR/doinst.sh.l10n \
+ | sed -e "s/@LIBDIRSUFFIX@/${LIBDIRSUFFIX}/g" \
+ -e "s/@LANG@/${DEF_LANG}/g" -e "s/@PRGNAM@/$PRGNAM/" \
+ > ${PKG}/install/doinst.sh
cat <<EOT >> $PKG/install/doinst.sh
# Update the desktop database:
if [ -x usr/bin/update-desktop-database ]; then
@@ -356,7 +395,7 @@ cat $SRCDIR/slack-desc > $PKG/install/slack-desc
# Build the package:
cd $PKG
-makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${LOVER}_${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz} 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log
+/sbin/makepkg -p -l y -c n $OUTPUT/${PRGNAM}-${LOVER}_${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz} 2>&1 | tee $OUTPUT/makepkg-${PRGNAM}.log
cd $OUTPUT
md5sum ${PRGNAM}-${LOVER}_${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz} > ${PRGNAM}-${LOVER}_${VERSION}-${ARCH}-${BUILD}${TAG}.${PKGTYPE:-txz}.md5
cd -