#!/bin/bash # kdebase.SlackBuild # Heavily based on the original Slackware build scripts, # Modified by Stuart Winter # 08-Aug-2005 # Record toolchain & other info for the build log: slackbuildinfo # Paths to skeleton port's source & real Slackware source tree: export CWD=$SLACKSOURCE/$PKGSERIES/$PKGNAM export PORTCWD=$PWD # Set the config option variables if they are not already set: if [ -r ../KDE.options ]; then . ../KDE.options fi # The global options may be overridden here (if needed): if [ -r ./local.options ]; then . ./local.options fi # Avoid a version number in .la files: if [ -d /usr/lib${LIBDIRSUFFIX}/qt ]; then QTDIR=/usr/lib${LIBDIRSUFFIX}/qt fi # Temporary build locations: export TMPBUILD=$TMP/build-$PKGNAM export PKG=$TMP/package-$PKGNAM mkpkgdirs # Delete & re-create temporary directories then cd into $TMPBUILD # Extract source: tar xvf $CWD/../src/kdebase-$VERSION.tar.?z* || exit 1 cd $PKGNAM-$VERSION slackhousekeeping # Configure: mkdir -p build cd build cmake \ $KDE_OPT_ARGS \ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DMAN_INSTALL_DIR=/usr/man \ -DSYSCONF_INSTALL_DIR=/etc/kde \ -DLIB_SUFFIX=${LIBDIRSUFFIX} \ -DRUN_KAPPFINDER=ON \ .. || exit 1 # Build: make $NUMJOBS || make || failmake # Install into package: make install DESTDIR=$PKG cd - # Add profile scripts mkdir -p $PKG/etc/profile.d cat $CWD/profile.d/kde.sh | sed -e "s#/lib/#/lib${LIBDIRSUFFIX}/#" \ > $PKG/etc/profile.d/kde.sh cat $CWD/profile.d/kde.csh | sed -e "s#/lib/#/lib${LIBDIRSUFFIX}/#" \ > $PKG/etc/profile.d/kde.csh chmod 0755 $PKG/etc/profile.d/* # "konsole -ls" is no longer valid syntax for konsole, even though it's # still documented in the help manual. Here's a way to get the same # thing, and it works here, but I honestly don't know how it will act # everywhere with every shell. I just know it works with bash and ksh sed -i -e 's/Exec=konsole/Exec=konsole -e $SHELL -l/' \ $PKG/usr/share/applications/kde4/konsole.desktop ## I find this a little bit too bright... ## Change the konsole defaults to look like the real Linux console: #sed -i 's/ColorScheme=Linux/ColorScheme=WhiteOnBlack/' \ # $PKG/usr/share/apps/konsole/Shell.profile mkdir -p $PKG/usr/doc/kdebase-$VERSION cp -a AUTHORS COPYING* README $PKG/usr/doc/kdebase-$VERSION || true # If necessary, start the fakeroot server so we can set file/dir ownerships: start_fakeroot # Apply generic Slackware packaging policies: cd $PKG slackstripall # strip all .a archives and all ELFs slackgzpages -i # compress man & info pages and delete usr/info/dir slackslack # chown -R root:root, chmod -R og-w, slackchown, slack644docs slackdesc # install slack-desc and doinst.sh slackmp # run makepkg -l y -c n # Perform any final checks on the package: cd $PKG slackhlinks # search for any hard links