#!/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