You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

156 lines
5.5 KiB

#!/bin/sh
# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
# Copyright 2009, 2010, 2011, 2012, 2013, 2014, 2015 Eric Hameleers, Eindhoven, Netherlands
# Copyright 2015-2017 Thorn Inurcide
# Copyright 2015-2017 tde-slackbuilds project on GitHub
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
# any purpose with or without fee is hereby granted, provided that
# the above copyright notice and this permission notice appear in all
# copies.
#
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 AUTHORS AND COPYRIGHT HOLDERS AND THEIR
# CONTRIBUTORS 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.
PRGNAM=tde-i18n
VERSION=${VERSION:-$TDEVERSION}
BUILD=${BUILD:-1}
source ../../get-source.sh
## the source unpacked is ~950MB, so to save on build space
## extract, build, and remove source for each language package one at a time
cd $TMP/tmp-${PRGNAM}
# extract the cmake source once only
echo -e "\033[39;1m"
echo "Extracting the cmake source from the ${PRGNAM} archive ..."
echo -e "\033[0m"
tar xf ${SOURCE} ${PRGNAM}/cmake
for lang in $I18N
do
# extract the source for one language at a time for each iteration of the loop
echo -e "\033[39;1m"
echo "Extracting the ${PRGNAM}-$lang source from the ${PRGNAM} archive ..."
echo -e "\033[0m"
tar -xf ${SOURCE} ${PRGNAM}/${PRGNAM}-$lang
cd ${PRGNAM}
chown -R root:root .
chmod -R u+w,go+r-w,a+rX-st .
mkdir -p ${PRGNAM}-$lang/build
cd ${PRGNAM}-$lang/build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_C_COMPILER=${COMPILER} \
-DCMAKE_CXX_COMPILER=${COMPILER_CXX} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=${INSTALL_TDE} \
-DSYSCONF_INSTALL_DIR="/etc/trinity" \
-DMAN_INSTALL_DIR=${INSTALL_TDE}/man \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DBUILD_ALL="ON" \
..
make $NUMJOBS || exit 1
make DESTDIR=$PKG install || exit 1
cd -
mkdir -p $PKG/${INSTALL_TDE}/doc/${PRGNAM}-$VERSION
#cp -a $DOCS $PKG${INSTALL_TDE}/doc/${PRGNAM}-$VERSION || true
cat $SRCDIR/$(basename $0) > $PKG${INSTALL_TDE}/doc/${PRGNAM}-$VERSION/${PRGNAM}-${lang}.SlackBuild
chown -R root:root $PKG${INSTALL_TDE}/doc/${PRGNAM}-$VERSION
find $PKG${INSTALL_TDE}/doc -type f -exec chmod 644 {} \;
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
SlackDesc()
{
echo "
# 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 ':'.
${PRGNAM}-$lang|-----handy-ruler------------------------------------------------------|
${PRGNAM}-$lang: ${PRGNAM}-$lang
${PRGNAM}-$lang:
${PRGNAM}-$lang: Language support for TDE:
${PRGNAM}-$lang:
${PRGNAM}-$lang: $(echo $Lang)
${PRGNAM}-$lang:
${PRGNAM}-$lang:
${PRGNAM}-$lang:
${PRGNAM}-$lang:
${PRGNAM}-$lang:
${PRGNAM}-$lang:
" > $PKG/install/slack-desc
}
mkdir -p $PKG/install
# extract the name of the language from the source text - a bit messy but there is no standard format
Lang=$(grep Language-Team: $TMP/tmp-$PRGNAM/$PRGNAM/tde-i18n-${lang}/messages/tdebase/*.po|sort -k2 | sed -e 's|Team: |\n|' -e 's| <|\n|' -e 's|akh\\n"|akh|' -e 's|an S|#|' | grep "[A-Z][a-z][a-z]*$"|head -n 1)
[[ "$lang" == "pt" ]] && Lang="Portuguese"
[[ "$lang" == "fy" ]] && Lang="Frisian"
SlackDesc
mkdir -p $PKG/install
cat <<EOINS >> $PKG/install/doinst.sh
# Update the desktop database:
if [ -x usr/bin/update-desktop-database ]; then
chroot . /usr/bin/update-desktop-database usr/share/applications > /dev/null 2>&1
fi
# Update hicolor theme cache:
if [ -d usr/share/icons/hicolor ]; then
if [ -x /usr/bin/gtk-update-icon-cache ]; then
chroot . /usr/bin/gtk-update-icon-cache -f -t usr/share/icons/hicolor 1> /dev/null 2> /dev/null
fi
fi
EOINS
ARCH="noarch"
cd $PKG
makepkg --linkadd y --chown n $OUTPUT/${PRGNAM}-${lang}-${VERSION}-${ARCH}-${BUILD}.${PKGTYPE:-txz}
cd $OUTPUT
md5sum ${PRGNAM}-${lang}-${VERSION}-${ARCH}-${BUILD}.${PKGTYPE:-txz} > ${PRGNAM}-${lang}-${VERSION}-${ARCH}-${BUILD}.${PKGTYPE:-txz}.md5
cd -
cat $PKG/install/slack-desc | grep "^${PRGNAM}" | grep -v handy > $OUTPUT/${PRGNAM}-${lang}-${VERSION}-${ARCH}-${BUILD}.txt
# Restore the original umask:
umask ${_UMASK_}
rm -rf $PKG/*
cd $TMP/tmp-${PRGNAM}
rm -rf ${PRGNAM}/${PRGNAM}-${lang}
# Install i18n package(s) here because if more than one language pack is built,
# upgradepkg [in BUILD-TDE.sh] can't process them in one command and the build will exit
if [ $INST == 1 ]
then
upgradepkg --install-new --reinstall $OUTPUT/${PRGNAM}-${lang}-${VERSION}-${ARCH}-${BUILD}.${PKGTYPE:-txz}
fi
done
echo $lang > $TMPVARS/LASTLANG