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 --- deps/qt5/archive/qt5.SlackBuild1 | 265 --------------------------------------- 1 file changed, 265 deletions(-) delete mode 100644 deps/qt5/archive/qt5.SlackBuild1 (limited to 'deps/qt5/archive/qt5.SlackBuild1') diff --git a/deps/qt5/archive/qt5.SlackBuild1 b/deps/qt5/archive/qt5.SlackBuild1 deleted file mode 100644 index b68cbe6..0000000 --- a/deps/qt5/archive/qt5.SlackBuild1 +++ /dev/null @@ -1,265 +0,0 @@ -#!/bin/sh - -# Slackware build script for qt5 - -# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 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. - -# Merged some ideas from Alex Sarmardzic's script for qt4 at SlackBuilds.org -# ^^ Modified by Robby Workman for QT4 & KDE4 - -# Modifications 2010, 2011, 2012, 2013, 2014 Eric Hameleers, Eindhoven, NL - -# Tailored to Qt5 by Larry Hajali 2013, 2014. - -PKGNAM=qt5 -SRCNAM=qt5 -VERSION=${VERSION:-5.2.1} -BUILD=${BUILD:-1} - -CWD=$(pwd) -TMP=${TMP:-/tmp} -PKG=$TMP/package-$PKGNAM - -if [ -e $CWD/machine.conf ]; then - . $CWD/machine.conf ] -elif [ -e /etc/slackbuild/machine.conf ]; then - . /etc/slackbuild/machine.conf ] -else - # Automatically determine the architecture we're building on: - MARCH=$( uname -m ) - if [ -z "$ARCH" ]; then - case "$MARCH" in - i?86) export ARCH=i486 ;; - arm*) export ARCH=arm ;; - # Unless $ARCH is already set, use uname -m for all other archs: - *) export ARCH=$MARCH ;; - esac - fi - # Set CFLAGS/CXXFLAGS and LIBDIRSUFFIX: - if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" - LIBDIRSUFFIX="" - elif [ "$ARCH" = "s390" ]; then - SLKCFLAGS="-O2" - LIBDIRSUFFIX="" - elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2 -fPIC" - LIBDIRSUFFIX="64" - elif [ "$ARCH" = "arm" ]; then - SLKCFLAGS="-O2 -march=armv5te" - LIBDIRSUFFIX="" - elif [ "$ARCH" = "armv7hl" ]; then - # To prevent "qatomic_armv6.h error: output number 2 not directly addressable" - # More permanent solution is to patch gcc: - # http://bazaar.launchpad.net/~linaro-toolchain-dev/gcc-linaro/4.6/revision/106731 - SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -fno-strict-volatile-bitfields" - LIBDIRSUFFIX="" - else - SLKCFLAGS="-O2" - LIBDIRSUFFIX="" - fi -fi - -case "$ARCH" in - arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; - *) TARGET=$ARCH-slackware-linux ;; -esac - -rm -rf $PKG -mkdir -p $TMP $PKG -cd $TMP -rm -rf ${SRCNAM}-everywhere-opensource-src-$VERSION || exit 1 -tar xvf $CWD/${SRCNAM}-everywhere-opensource-src-$VERSION.tar.xz || exit 1 -cd ${SRCNAM}-everywhere-opensource-src-$VERSION || exit 1 -chown -R root:root . -find -L . \ - \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \ - -exec chmod 755 {} \; -o \ - \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ - -exec chmod 644 {} \; - -# Fix path to mysql header -zcat $CWD/patches/qt5.mysql.h.diff.gz | patch -p1 --verbose || exit 1 - -# Install path fix for libplatformplugin.so. -# https://bugs.webkit.org/show_bug.cgi?id=117077 -zcat $CWD/patches/platformplugin-install-path-fix.patch.gz | patch -p1 --verbose || exit 1 - -if [ $ARCH = "i486" ]; then - sed -i -e "s/QMAKE_CFLAGS_RELEASE += -O2/QMAKE_CFLAGS_RELEASE += $SLKCFLAGS/" mkspecs/common/gcc-base.conf || exit 1 -fi - -export CFLAGS="$SLKCFLAGS" -export CXXFLAGS="$SLKCFLAGS" -export OPENSOURCE_CXXFLAGS="$SLKCFLAGS" -./configure \ - -confirm-license \ - -opensource \ - -release \ - -prefix "/usr/lib${LIBDIRSUFFIX}/$PKGNAM" \ - -sysconfdir "/etc/xdg" \ - -docdir "/usr/doc/$PKGNAM-$VERSION" \ - -accessibility \ - -dbus-linked \ - -glib \ - -icu \ - -javascript-jit \ - -openssl \ - -optimized-qmake \ - -plugin-sql-sqlite \ - -qpa xcb \ - -reduce-relocations \ - -verbose \ - -xcb \ - -nomake examples \ - -no-pch \ - -no-rpath \ - -no-separate-debug-info \ - -no-strip \ - -system-harfbuzz \ - -system-libjpeg \ - -system-libpng \ - -system-pcre \ - -system-sqlite \ - -system-zlib - -# Sometimes a failure happens when parallelizing make. Try again if make fails, -# but make a failure the second time around (single threaded) a fatal error: -make $NUMJOBS || make || exit 1 -make install INSTALL_ROOT=$PKG || exit 1 - -# The infamous qt -> qt-${VERSION} link that keeps the full path out of .la files: -ln -s $PKGNAM $PKG/usr/lib${LIBDIRSUFFIX}/qt-$VERSION - -mkdir -p $PKG/usr/bin -for BIN in $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/bin/*; do - TMP_FILE=$(echo $BIN | sed -e "s|$PKG||") - case $(basename $BIN) in - syncqt.pl) - ln -s $TMP_FILE $PKG/usr/bin/$(basename $BIN) - ;; - *) - ln -s $TMP_FILE $PKG/usr/bin/$(basename $BIN)-$PKGNAM - ;; - esac -done - -for LIBS in $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/lib/*so*; do - TMP_FILE=$(echo $LIBS | sed -e "s|$PKG||") - ln -s $TMP_FILE $PKG/usr/lib${LIBDIRSUFFIX}/$(basename $LIBS) -done - -# Create Environment variables -mkdir -p $PKG/etc/profile.d -sed -e "s|@LIBDIRSUFFIX@|${LIBDIRSUFFIX}|g" $CWD/profile.d/$PKGNAM.sh \ - > $PKG/etc/profile.d/$PKGNAM.sh -sed -e "s|@LIBDIRSUFFIX@|${LIBDIRSUFFIX}|g" $CWD/profile.d/$PKGNAM.csh \ - > $PKG/etc/profile.d/$PKGNAM.csh -chmod 0755 $PKG/etc/profile.d/* - -find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ - | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true - -# Add a missing Qt.pc which is needed by KDE applications: -mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig -cat < $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/lib/pkgconfig/Qt5.pc -prefix=/usr/lib${LIBDIRSUFFIX}/$PKGNAM -bindir=\${prefix}/bin -datadir=\${prefix} -docdir=/usr/doc/$PKGNAM-$VERSION -archdatadir=\${prefix} -examplesdir=\${prefix}/examples -headerdir=\${prefix}/include -importdir=\${prefix}/imports -qmldir=\${prefix}/qml -libdir=\${prefix}/lib -libexec=\${prefix}/libexec -moc=\${bindir}/moc -plugindir=\${prefix}/plugins -qmake=\${bindir}/qmake -sysconfdir=/etc/xdg -translationdir=\${prefix}/translations - -Name: Qt5 -Description: Qt5 Configuration -Version: $VERSION -EOF - -# Fix internal linking for Qt5WebKit.pc. -sed -i \ - -e "s|-Wl,-whole-archive -lWebKit1 -Wl,-no-whole-archive -L${PWD}/qtwebkit/Source/WebKit[^ ]* ||" \ - -e "s|-Wl,-whole-archive -lWebKit2 -Wl,-no-whole-archive -L${PWD}/qtwebkit/Source/WebKit2[^ ]* ||" \ - -e "s|-Wl,-whole-archive -lWebCore -Wl,-no-whole-archive -L${PWD}/qtwebkit/Source/WebCore[^ ]* ||" \ - -e "s|-Wl,-whole-archive -lANGLE -Wl,-no-whole-archive -L${PWD}/qtwebkit/Source/ThirdParty/ANGLE[^ ]* ||" \ - -e "s|-Wl,-whole-archive -lJavaScriptCore -Wl,-no-whole-archive -L${PWD}/qtwebkit/Source/JavaScriptCore[^ ]* ||" \ - -e "s|-Wl,-whole-archive -lWTF -Wl,-no-whole-archive -L${PWD}/qtwebkit/Source/WTF[^ ]* ||" \ - $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/lib/pkgconfig/Qt5WebKit.pc - -# While we are at it, there isn't any reason to keep references to $PKG in the *.prl files. -for PRL in $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/lib/*.prl; do - sed -i '/^QMAKE_PRL_BUILD_DIR/d' $PRL -done - -# One more for the road. -sed -i "s|$PWD/qtbase|/usr/lib${LIBDIRSUFFIX}/$PKGNAM|" \ - $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/mkspecs/modules/qt_lib_bootstrap_private.pri - -mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig -for PKGCONFIG in $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/lib/pkgconfig/*.pc; do - TMP_FILE=$(echo $PKGCONFIG | sed -e "s|$PKG||") - ln -s $TMP_FILE $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/$(basename $PKGCONFIG) -done - -mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/cmake -for CMAKE in $(find $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/lib/cmake -maxdepth 1); do - TMP_FILE=$(echo $CMAKE | sed -e "s|$PKG||") - ln -s $TMP_FILE $PKG/usr/lib${LIBDIRSUFFIX}/cmake/$(basename $CMAKE) -done - -for i in $CWD/desktop/*.desktop; do - install -D -m 0644 $i $PKG/usr/share/applications/$(basename $i) -done -sed -i "s|@LIBDIR@|$LIBDIRSUFFIX|" $PKG/usr/share/applications/* - -for i in $(find . -name "assistant.ico" -o -name "designer.ico" \ - -o -name "linguist.ico" -o -name "qdbusviewer.ico"); do - for j in 16 24 32 48 64 96 128; do - convert $i -resize ${j}x${j}! $(basename $i)-$j.png - install -D -m 0644 $(basename $i)-$j-0.png \ - $PKG/usr/share/icons/hicolor/${j}x${j}/apps/$(basename $i | sed 's|.ico||')-$PKGNAM.png - done -done - -# Remove executable bits from files. -find $PKG \( -name "*.qml" -o -name "*.app" \) -perm 755 -exec chmod 644 '{}' \; - -mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION -cp -a \ - README qtbase/{header*,LGPL_EXCEPTION.txt,LICENSE.*L} \ - $PKG/usr/doc/$PKGNAM-$VERSION -cat $CWD/$PKGNAM.SlackBuild > $PKG/usr/doc/$PKGNAM-$VERSION/$PKGNAM.SlackBuild - -mkdir -p $PKG/install -cat $CWD/slack-desc > $PKG/install/slack-desc -cat $CWD/doinst.sh > $PKG/install/doinst.sh - -cd $PKG -/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz -- cgit v1.2.3