From da1be5a21ba06235b67a999f696ec66e35dc17a1 Mon Sep 17 00:00:00 2001 From: Eric Hameleers Date: Fri, 9 Jan 2015 00:06:49 +0100 Subject: Prepare for new KDE 5: Frameworks 5.6.0, Plasma 5.1.2, Applications 14.12.0. KDE 5_1501 ========== This is going to be KDE 5 for Slackware-current, composed of Frameworks 5.6.0, Plasma 5.1.2 and Applications 14.12.0. Note that there is still a lot of KDE 4 stuff in here, which is necessary to support all the Applications that have not yet been ported to KDE Frameworks 5. The Applications 15.04 (march 2015) release should offer a lot more KF5 ports. Preliminary build procedure (not verified 100% yet): ---------------------------------------------------- - (crude) get rid of Slackware's KDE: removepkg /var/log/packages/*-4.10.5-* - build all the deps using "updates.SlackBuild" script in the "deps/" directory - note that extra-cmake-modules is required here as well as when building the frameworks, so I just copied it from frameworks to deps. - logoff/login to activate Qt5 profile script. - removepkg akonadi-qt5 or else kdepimlibs-4.14.3 picks up Qt5 dependencies and its compilation will fail as a result - build all the KDE 4 stuff in the "kde/" directory, using "./KDE.SlackBuild kde libs kdebase:nepomuk-core kdepimlibs kdebase kdebindings kdebase:kde-workspace k depim extragear" - installpkg akonadi-qt5 - build the remaining KDE 5 stuff in the "kde/" directory, using "./KDE.SlackBui ld frameworks plasma plasma-extra polkit-kde applications" - build kdei ============================================================================== Eric Hameleers / alien at slackware dot com / 09-jan-2015 --- kdei/kde-l10n/kde-l10n.SlackBuild | 152 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100755 kdei/kde-l10n/kde-l10n.SlackBuild (limited to 'kdei/kde-l10n/kde-l10n.SlackBuild') diff --git a/kdei/kde-l10n/kde-l10n.SlackBuild b/kdei/kde-l10n/kde-l10n.SlackBuild new file mode 100755 index 0000000..b21b5c2 --- /dev/null +++ b/kdei/kde-l10n/kde-l10n.SlackBuild @@ -0,0 +1,152 @@ +#!/bin/sh + +# Copyright 2008 Robby Workman Northport, AL, USA +# Copyright 2009, 2010, 2011, 2012, 2013, 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS 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 AUTHOR 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. + +# This script should build any of the language packs if run with (for example): +# PKGLANG=de ./kde-l10n.SlackBuild +# You should be able to build all of them with something like this: +# for i in $(cat languages) ; do PKGLANG=$i ./kde-l10n.SlackBuild ; done +# If ./languages is missing and this script is called without options, the +# default is to create an up-to-date ./languages list and build all the +# language packs. + +if [ ! -r ./languages ]; then + for file in kde-l10n*xz ; do + echo $file | cut -f 3 -d - >> ./languages + done +fi + +[ -z $VERSION ] && export VERSION=14.12.0 +[ -z $ARCH ] && export ARCH=noarch +[ -z $BUILD ] && export BUILD=1 + +# Use this as CFLAGS and CXXFLAGS: +if [ -z "$SLKCFLAGS" ]; then + if [ "$ARCH" = "i486" ]; then + export SLKCFLAGS="-O2 -march=i486 -mtune=i686" + elif [ "$ARCH" = "s390" ]; then + export SLKCFLAGS="-O2" + elif [ "$ARCH" = "x86_64" ]; then + export SLKCFLAGS="-O2 -fPIC" + elif [ "$ARCH" = "armv7hl" ]; then + export SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16" + else + export SLKCFLAGS="-O2" + fi +fi + +# Get the kde environment variables +[ -d kdebase ] && . ./kdebase/profile.d/kde.sh + +# Set the config option variables if they are not already set: +[ -r ../KDE.options ] && . ../KDE.options + +CWD=$(pwd) +TMP=${TMP:-/tmp} + +# This function will insert missing kdepim translations from kde-l10n-4.4.5: +insert_kdepim() { + if [ -r $CWD/kdepim-l10n/kdepim-l10n-$(echo $PKGNAM | cut -f 3 -d -)-4.4.5.tar.xz ]; then + tar xvf $CWD/kdepim-l10n/kdepim-l10n-$(echo $PKGNAM | cut -f 3 -d -)-4.4.5.tar.xz + fi + for dir in $(find . -type d -name messages) $(find . -type d -name docs) ; do + ( cd $dir + if [ -d kdepim ]; then + echo "add_subdirectory( kdepim )" >> CMakeLists.txt.new + fi + if [ -r CMakeLists.txt ]; then + cat CMakeLists.txt >> CMakeLists.txt.new + mv CMakeLists.txt.new CMakeLists.txt + else + rm -f CMakeLists.txt.new + fi + ) + done + # Update DTD specification. This will fix some of the issues... + sed -i -e "s/V4.1.2-Based/V4.2-Based/g" $(grep -lr "V4.1.2-Based" *) + sed -i -e "s/V4.1-Based/V4.2-Based/g" $(grep -lr "V4.1-Based" *) + sed -i -e "s/V4.2-Based Variant V1.0/V4.2-Based Variant V1.1/g" $(grep -lr "V4.2-Based Variant V1.0" *) + if ls $CWD/kdepim-l10n/kdepim-l10n-$(echo $PKGNAM | cut -f 3 -d -)-4.4.5.*.diff.gz 1> /dev/null 2> /dev/null ; then + for patch in $CWD/kdepim-l10n/kdepim-l10n-$(echo $PKGNAM | cut -f 3 -d -)-4.4.5.*.diff.gz ; do + zcat $patch | patch -p1 --verbose || exit 1 + done + fi +} + +make_language_pack() { +rm -rf $PKG +mkdir -p $TMP $PKG +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1 +cd $PKGNAM-$VERSION || exit 1 +insert_kdepim; +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; +mkdir -p build +( cd build + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DMAN_INSTALL_DIR=/usr/man \ + -DSYSCONF_INSTALL_DIR=/etc/kde \ + -DLIB_SUFFIX=${LIBDIRSUFFIX} \ + .. + make || exit 1 + make install DESTDIR=$PKG || exit 1 +) || touch $TMP/$PKGNAM.failed +( cd $PKG + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +) +if [ -d $PKG/usr/man ]; then + ( cd $PKG/usr/man + find . -type f -exec gzip -9 {} \; + ) +fi +mkdir -p $PKG/install +cat $CWD/slack-desc/slack-desc.kde-l10n-$PKGLANG > $PKG/install/slack-desc +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz +} + +if [ -z $PKGLANG ]; then + for PKGLANG in $(cat languages) ; do + PKGNAM=kde-l10n-$PKGLANG + PKG=$TMP/package-kde-l10n-$PKGLANG + # The global options may be overridden here (if needed): + [ -r ./local.options/$PKGLANG ] && . ./local.options/$PKGLANG + make_language_pack; + done +else + PKGNAM=kde-l10n-$PKGLANG + PKG=$TMP/package-kde-l10n-$PKGLANG + # The global options may be overridden here (if needed): + [ -r ./local.options/$PKGLANG ] && . ./local.options/$PKGLANG + make_language_pack; +fi + -- cgit v1.2.3