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.
186 lines
6.3 KiB
186 lines
6.3 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
|
|
[[ $PRE_DOWNLOAD != yes ]] && [[ $I18N == "" ]] && \
|
|
echo -e "\033[39;1m
|
|
You have tried to build $PRGNAM without selecting any language(s)
|
|
\033[0m" && exit
|
|
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.13 ]] && {
|
|
# extract the template source once only
|
|
echo -e "\033[39;1m
|
|
Extracting the template source from $(basename $SOURCE) ...
|
|
\033[0m"
|
|
tar xf $SOURCE $PRGNAM-trinity-$TDEVERSION/template
|
|
# extract the translations source once only
|
|
echo -e "\033[39;1m
|
|
Extracting the translations source from $(basename $SOURCE) ...
|
|
\033[0m"
|
|
tar xf $SOURCE $PRGNAM-trinity-$TDEVERSION/translations
|
|
# extract the cmake source once only
|
|
## it's unlikely that this is being run without the 'Required' packages,
|
|
## in which case the cmake archive will exist
|
|
echo -e "\033[39;1m
|
|
Extracting the cmake source from $(basename $SRCDIR/cmake-$TDEVERSION.tar.xz) ...
|
|
\033[0m"
|
|
(cd $PRGNAM-trinity-$TDEVERSION
|
|
tar xf $SRCDIR/cmake-$TDEVERSION.tar.xz
|
|
mv cmake-trinity-$TDEVERSION cmake)
|
|
## prevent copying from cgit if this fails
|
|
cd tde-i18n-trinity-$TDEVERSION
|
|
[[ ! -d cmake || ! -d template || ! -d translations ]] && exit
|
|
cd - > /dev/null
|
|
} || {
|
|
mkdir -p $PRGNAM # need -p for git builds if more than one lang
|
|
(cd $BUILD_TDE_ROOT/src/cgit
|
|
cp -a tdei18n/cgit/tde-i18n/plain/{template,translations} $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/
|
|
cp -a --parents cmake/* $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/)
|
|
}
|
|
|
|
for lang in $I18N
|
|
do
|
|
[[ $TDEVERSION == 14.0.13 ]] && {
|
|
# extract the source for one language at a time for each iteration of the loop
|
|
echo -e "\033[39;1m
|
|
Extracting the $PRGNAM-$lang source from $(basename $SOURCE) ...
|
|
\033[0m"
|
|
tar -xf $SOURCE $PRGNAM-trinity-$TDEVERSION/$PRGNAM-$lang
|
|
cd $PRGNAM-trinity-$TDEVERSION
|
|
## link cmake into the $PRGNAM-$lang top level
|
|
(cd $PRGNAM-$lang
|
|
ln -s ../cmake .)
|
|
|
|
true # don't go to cgit if extracting fails
|
|
} || {
|
|
cd $PRGNAM
|
|
echo "
|
|
copying $PRGNAM-$lang source files to build area ...
|
|
"
|
|
(cd $BUILD_TDE_ROOT/src/cgit
|
|
cp -a tdei18n/cgit/tde-i18n/plain/tde-i18n-$lang $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/)
|
|
(cd $TMP_BUILD/tmp-$PRGNAM/$PRGNAM/$PRGNAM-$lang/
|
|
ln -sf ../template/commonCMakeLists.txt CMakeLists.txt
|
|
ln -s ../cmake cmake)
|
|
}
|
|
|
|
## language specific patches
|
|
patch -N -p0 < $SB_SRCDIR/tde-i18n-$lang-patch || true # continue if patch file doesn't exist
|
|
|
|
chown_fn
|
|
|
|
mkdir -p $PRGNAM-$lang/build
|
|
cd $PRGNAM-$lang/build
|
|
|
|
## The path to the TDE cmake modules is added for 14.0.11+ & 14.1.0 which assume a cmake-trinity package is installed to the CMake system directories
|
|
cmake ${G_NINJA:-} \
|
|
-DCMAKE_MODULE_PATH=$PWD/../cmake/modules \
|
|
-DCMAKE_C_FLAGS="$SLKRCFLAGS" \
|
|
-DCMAKE_CXX_FLAGS="$SLKRCFLAGS" \
|
|
-DCMAKE_C_COMPILER=$COMPILER \
|
|
-DCMAKE_CXX_COMPILER=$COMPILER_CXX \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_INSTALL_PREFIX=$INSTALL_TDE \
|
|
-DLIB_SUFFIX=$LIBDIRSUFFIX \
|
|
-DBUILD_DOC="ON" \
|
|
-DBUILD_DATA="ON" \
|
|
-DBUILD_MESSAGES="ON" \
|
|
-Wno-dev \
|
|
..
|
|
|
|
## install to $PKG/$PRGNAM-$lang so that the build files can be retained
|
|
PKG1=$PKG
|
|
PKG=$PKG/$PRGNAM-$lang
|
|
make_fn
|
|
|
|
mkdir_install_fn
|
|
|
|
Lang=$(xzgrep ^"$lang " $SB_SRCDIR/langcodes.xz |colrm 1 16|cut -f1)
|
|
Lang_en=$(xzgrep ^"$lang " $SB_SRCDIR/langcodes.xz |colrm 1 40)
|
|
|
|
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 [$Lang_en]
|
|
$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.txz
|
|
cd $OUTPUT
|
|
md5sum $PRGNAM-$lang-$VERSION-$ARCH-$BUILD.txz > $PRGNAM-$lang-$VERSION-$ARCH-$BUILD.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_}
|
|
|
|
## Reset the packaging directory base
|
|
PKG=$PKG1
|
|
|
|
cd $TMP_BUILD/tmp-$PRGNAM
|
|
# remove any previous builds if option chosen
|
|
[[ $KEEP_BUILD != "yes" ]] && echo "
|
|
removing tde-i18n-$lang build data ..
|
|
" && {
|
|
rm -rf $PKG/*
|
|
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
|
|
[[ $INST == 1 ]] && upgradepkg --install-new --reinstall $OUTPUT/$PRGNAM-$lang-$VERSION-$ARCH-$BUILD.txz
|
|
|
|
done
|
|
|
|
echo $lang > $TMPVARS/LASTLANG
|
|
|
|
[[ $KEEP_BUILD != "yes" ]] && rm -rf $TMP_BUILD/{package,tmp}-$PRGNAM
|