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.

157 lines
5.7 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
[[ $I18N == "" ]] && echo -e "\nYou have tried to build $PRGNAM without selecting any language(s)\n" && exit
VERSION=${VERSION:-$TDEVERSION}
BUILD=${BUILD:-1}
source ../../get-source.sh
getsource_fn
## 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_BUILD/tmp-$PRGNAM
[[ $TDEVERSION == *14.0.? ]] && {
[[ $TDEVERSION == r14.0.? ]] && SNAPSHOT=-$TDEVERSION || SNAPSHOT=-trinity-$TDEVERSION
# extract the cmake source once only
echo -e "\033[39;1m"
echo "Extracting the cmake source from the $(basename $SOURCE) archive ..."
echo -e "\033[0m"
tar xf $SOURCE $PRGNAM${SNAPSHOT:-}/cmake
[[ $TDEVERSION == r14.0.? ]] && {
## copy cmake contents to cmake directory
tar xf $SRCDIR/../../src/cmake-$TDEVERSION.$ARCHIVE_TYPE --strip-components=1 -C $PRGNAM${SNAPSHOT:-}/cmake
}
}
for lang in $I18N
do
[[ $TDEVERSION == *14.0.? ]] && {
# 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 $(basename $SOURCE) archive ..."
echo -e "\033[0m"
tar -xf $SOURCE $PRGNAM${SNAPSHOT:-}/$PRGNAM-$lang
cd $PRGNAM*
true # don't go to cgit if extracting fails
} || {
mkdir -p $PRGNAM # need -p for git builds if more than one lang
cd $PRGNAM
echo -e " copying $PRGNAM-$lang source files to build area ... \n"
(cd $BUILD_TDE_ROOT/src/cgit
cp -a tdei18n/cgit/tde-i18n/plain/tde-i18n-$lang $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/
cp -a --parents {admin,cmake}/* $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/tde-i18n-$lang/)
}
## language specific patches
patch -p0 < $SRCDIR/tde-i18n-$lang-patch || true # continue if patch file doesn't exist
chown_fn
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=$SYS_CNF_DIR \
-DMAN_INSTALL_DIR=$INSTALL_TDE/man \
-DLIB_SUFFIX=$LIBDIRSUFFIX \
-DBUILD_DOC="ON" \
-DBUILD_DATA="ON" \
-DBUILD_MESSAGES="ON" \
..
make_fn
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 {} \;
mkdir_install_fn
# extract the name of the language from the source text - a bit messy but there is no standard format
Lang=$(grep Language-Team: $TMP_BUILD/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"
doinst_sh_fn
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 ':'.
|-----handy-ruler------------------------------------------------------|
$PRGNAM-$lang: tde-i18n-$lang
$PRGNAM-$lang:
$PRGNAM-$lang: Language support for TDE: $Lang
$PRGNAM-$lang:
$PRGNAM-$lang:
$PRGNAM-$lang:
$PRGNAM-$lang:
$PRGNAM-$lang:
$PRGNAM-$lang:
$PRGNAM-$lang:
$PRGNAM-$lang:
$PRGNAM-$lang:
" > $PKG/install/slack-desc
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
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_BUILD/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