#!/bin/bash # kdewebdev.SlackBuild # Heavily based on the original Slackware build scripts, # Modified by Stuart Winter # 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 # Create some package framework: mkdir -p $PKG/usr echo "****************************************************" echo "********* Building Tidy ****************************" echo "****************************************************" # First, build and install Tidy. # I haven't copied the stuff from here since the build script seems to be # arch neutral. Let's hope there are no ARM specific patches required :p pushd $CWD/tidy # Update build target: sed 's?ARCH-slackware-linux?ARCH-slackware-linux-gnueabi || exit 1 ?g' tidy.build > /tmp/tidy.build ARCH=$ARCH sh /tmp/tidy.build $PKG || exit 1 rm -vf /tmp/tidy.build popd echo "****************************************************" echo "************** Building kdewebdev ******************" echo "****************************************************" # Extract source: tar xvf $CWD/../src/kdewebdev-$VERSION.tar.?z* || exit 1 cd $PKGNAM-$VERSION slackhousekeeping # zcat $CWD/kde4-kdewebdev-findtidy.diff.gz | patch -p0 --verbose || exit 1 #01_no_need_to_have_interpreter_to_install_examples.diff #97_fix_target_link_libraries.diff # Maybe we won't need this again... # -DWITH_RUBY:BOOL=OFF \ cp klinkstatus/src/tidy/tidyx.h{,.orig} zcat $CWD/include-tidy.patch.gz | patch -p0 --verbose || exit 1 # # Adjust to use the temporary locations ARMedslack uses (we don't necessarily use /tmp) sed -i 's?/tmp/package-kdewebdev/?'"$PKG"'/?g' klinkstatus/src/tidy/tidyx.h # # 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} \ -DLIBTIDY_INCLUDE_DIR=$PKG/usr/include \ -DLIBTIDY_LIBRARIES=$PKG/usr/lib${LIBDIRSUFFIX}/libtidy.so \ .. || exit 1 # Build: make $NUMJOBS || failmake # Install into package: make install DESTDIR=$PKG cd - mkdir -p $PKG/usr/doc/kdewebdev-$VERSION cp -a AUTHORS COPYING* INSTALL* NEWS PACKAGING README TODO VERSION \ $PKG/usr/doc/kdewebdev-$VERSION # 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 # Perform any final checks on the package: cd $PKG slackhlinks # search for any hard links