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 --------------------- deps/qt5/archive/qt5.SlackBuild2 | 236 ------------------ .../patches/platformplugin-install-path-fix.patch | 15 ++ .../platformplugin-install-path-fix.patch.gz | Bin 360 -> 0 bytes deps/qt5/patches/qt5.mysql.h.diff | 12 + deps/qt5/patches/qt5.mysql.h.diff.gz | Bin 290 -> 0 bytes deps/qt5/patches/qt5.pulseaudio.diff | 12 + deps/qt5/qt5.SlackBuild | 44 ++-- 8 files changed, 59 insertions(+), 525 deletions(-) delete mode 100644 deps/qt5/archive/qt5.SlackBuild1 delete mode 100644 deps/qt5/archive/qt5.SlackBuild2 create mode 100644 deps/qt5/patches/platformplugin-install-path-fix.patch delete mode 100644 deps/qt5/patches/platformplugin-install-path-fix.patch.gz create mode 100644 deps/qt5/patches/qt5.mysql.h.diff delete mode 100644 deps/qt5/patches/qt5.mysql.h.diff.gz create mode 100644 deps/qt5/patches/qt5.pulseaudio.diff (limited to 'deps/qt5') 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 diff --git a/deps/qt5/archive/qt5.SlackBuild2 b/deps/qt5/archive/qt5.SlackBuild2 deleted file mode 100644 index 9badae3..0000000 --- a/deps/qt5/archive/qt5.SlackBuild2 +++ /dev/null @@ -1,236 +0,0 @@ -#!/bin/sh - -# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 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 - -# We're using qt-copy instead of a released qt version, as this git release -# has at least one bugfix strongly recommended by the kde developers. - -# Obtained from: -# git clone git://gitorious.org/+kde-developers/qt/kde-qt.git -# git checkout origin/4.5.3-patched -# git checkout origin/4.6.0-stable-patched -# git checkout origin/4.6.1-patched -# git checkout origin/4.7.0-patched -# -# Alternate method (we don't use this): -# wget http://qt.gitorious.org/qt/kde-qt/archive-tarball/4.6.2-patched -# -# Modifications 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL -# qt 4.7.3, 4.7.4, 4.8.0, 4.8.1, 4.8.2, 4.8.4 are built from original nokia sources. -# -# More Mods 2013 Michael James, AU -# Qt 5.1.0, 5.2.0 -# -# Changes -# -# 2013/10/14 Preliminary support for 5.2.0 (alpha) -# 2013/10/14 Fixed documentation symlink qt->qt5 -# 2013/12/14 Qt 5.2 support (removed some configure options) -# 2013/12/15 Change include install path to avoid conflicts - -PKGNAM=qt5 -VERSION=$(ls qt-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev) -BUILD=${BUILD:-1} - -NUMJOBS=${NUMJOBS:--j7} - -# Automatically determine the architecture we're building on: -MARCH=$( uname -m ) -if [ -z "$ARCH" ]; then - case "$MARCH" in - i?86) export ARCH=i486 ;; - armv7hl) export ARCH=$MARCH ;; - arm*) export ARCH=arm ;; - # Unless $ARCH is already set, use uname -m for all other archs: - *) export ARCH=$MARCH ;; - esac -fi - -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" = "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 - -case "$ARCH" in - arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; - *) TARGET=$ARCH-slackware-linux ;; -esac - -CWD=$(pwd) -TMP=${TMP:-/tmp} -PKG=$TMP/package-${PKGNAM} - -rm -rf $PKG -mkdir -p $TMP $PKG -cd $TMP -rm -rf qt-everywhere-opensource-src-$VERSION -tar xvf $CWD/qt-everywhere-opensource-src-$VERSION.tar.?z* # For qt releases -cd qt-everywhere-opensource-src-$VERSION || exit 1 - -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 {} \; - -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 \ - -prefix /usr \ - -datadir /usr/share/qt5 \ - -libdir /usr/lib${LIBDIRSUFFIX} \ - -archdatadir /usr/lib${LIBDIRSUFFIX}/qt5 \ - -bindir /usr/lib${LIBDIRSUFFIX}/qt5/bin \ - -headerdir /usr/include/qt5 \ - -system-libpng \ - -system-libjpeg \ - -system-zlib \ - -system-sqlite \ - -plugin-sql-sqlite \ - -dbus \ - -nomake examples \ - -no-separate-debug-info \ - -no-pch - # No-precompiled-headers is ccache-friendly. - -# 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 - -find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ - | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null - -# Add qtchooser config file -mkdir -p $PKG/etc/xdg/qtchooser -cat < $PKG/etc/xdg/qtchooser/5.conf -/usr/lib${LIBDIRSUFFIX}/qt5/bin -/usr/lib${LIBDIRSUFFIX} -EOF - -# Add menu entries for all those hidden but great Qt applications: -# Qt logo: -mkdir -p $PKG/usr/share/icons/hicolor/48x48/apps -convert qtdoc/doc/src/images/qt-logo.png -resize 48x48 $PKG/usr/share/icons/hicolor/48x48/apps/qt-logo.png -# Assistant icons -install -p -m644 -D qttools/src/assistant/assistant/images/assistant.png $PKG/usr/share/icons/hicolor/32x32/apps/assistant.png -install -p -m644 -D qttools/src/assistant/assistant/images/assistant-128.png $PKG/usr/share/icons/hicolor/128x128/apps/assistant.png -# Designer icon -install -p -m644 -D qttools/src/designer/src/designer/images/designer.png $PKG/usr/share/icons/hicolor/128x128/apps/designer.png -# Linguist icons -for icon in qttools/src/linguist/linguist/images/icons/linguist-*-32.png ; do - size=$(echo $(basename ${icon}) | cut -d- -f2) - install -p -m644 -D ${icon} $PKG/usr/share/icons/hicolor/${size}x${size}/apps/linguist.png -done - -# And the .desktop files -mkdir -p $PKG/usr/share/applications -cat < $PKG/usr/share/applications/qt5-designer.desktop -[Desktop Entry] -Name=Qt5 Designer -GenericName=Interface Designer -Comment=Design GUIs for Qt5 applications -Exec=designer -qt=5 -Icon=designer -MimeType=application/x-designer; -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Development; -EOF -cat < $PKG/usr/share/applications/qt5-assistant.desktop -[Desktop Entry] -Name=Qt5 Assistant -Comment=Shows Qt5 documentation and examples -Exec=assistant -qt=5 -Icon=assistant -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Development;Documentation; -EOF -cat < $PKG/usr/share/applications/qt5-linguist.desktop -[Desktop Entry] -Name=Qt5 Linguist -Comment=Add translations to Qt5 applications -Exec=linguist -qt=5 -Icon=linguist -MimeType=text/vnd.trolltech.linguist;application/x-linguist; -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Development; -EOF -cat < $PKG/usr/share/applications/qt5-config.desktop -[Desktop Entry] -Name=Qt5 Config -Comment=Configure Qt5 behavior, styles, fonts -Exec=qtconfig -qt=5 -Icon=qt-logo -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Settings; -EOF - -# Add a documentation directory: -mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION -cp -a *GPL_EXCEPTION* FAQ* INSTALL KNOWN* LICENSE* README* changes-* \ - $PKG/usr/doc/$PKGNAM-$VERSION -if [ -d $PKG/usr/lib${LIBDIRSUFFIX}/qt5/doc/html ]; then - ( cd $PKG/usr/doc/$PKGNAM-$VERSION - ln -sf /usr/lib${LIBDIRSUFFIX}/qt5/doc/html . - ) -fi - -mkdir -p $PKG/install -zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh -cat $CWD/slack-desc > $PKG/install/slack-desc - -cd $PKG -/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz - diff --git a/deps/qt5/patches/platformplugin-install-path-fix.patch b/deps/qt5/patches/platformplugin-install-path-fix.patch new file mode 100644 index 0000000..db9b33b --- /dev/null +++ b/deps/qt5/patches/platformplugin-install-path-fix.patch @@ -0,0 +1,15 @@ +See https://bugs.webkit.org/show_bug.cgi?id=117077 + +diff -Naur qt-everywhere-opensource-src-5.0.2.orig/qtwebkit/Source/WebKit/qt/examples/platformplugin/platformplugin.pro qt-everywhere-opensource-src-5.0.2/qtwebkit/Source/WebKit/qt/examples/platformplugin/platformplugin.pro +--- qt-everywhere-opensource-src-5.0.2.orig/qtwebkit/Source/WebKit/qt/examples/platformplugin/platformplugin.pro 2013-04-09 00:11:38.000000000 +0000 ++++ qt-everywhere-opensource-src-5.0.2/qtwebkit/Source/WebKit/qt/examples/platformplugin/platformplugin.pro 2013-05-31 01:18:29.157175082 +0000 +@@ -20,7 +20,8 @@ + } + } + +-DESTDIR = $$[QT_INSTALL_PLUGINS]/webkit ++target.path = $$[QT_INSTALL_PLUGINS]/webkit ++INSTALLS += target + + SOURCES += \ + WebPlugin.cpp \ diff --git a/deps/qt5/patches/platformplugin-install-path-fix.patch.gz b/deps/qt5/patches/platformplugin-install-path-fix.patch.gz deleted file mode 100644 index b76f275..0000000 Binary files a/deps/qt5/patches/platformplugin-install-path-fix.patch.gz and /dev/null differ diff --git a/deps/qt5/patches/qt5.mysql.h.diff b/deps/qt5/patches/qt5.mysql.h.diff new file mode 100644 index 0000000..41dc9d3 --- /dev/null +++ b/deps/qt5/patches/qt5.mysql.h.diff @@ -0,0 +1,12 @@ +diff -Naur qt-everywhere-opensource-src-5.1.0.orig/qtbase/src/sql/drivers/mysql/qsql_mysql_p.h qt-everywhere-opensource-src-5.1.0/qtbase/src/sql/drivers/mysql/qsql_mysql_p.h +--- qt-everywhere-opensource-src-5.1.0.orig/qtbase/src/sql/drivers/mysql/qsql_mysql_p.h 2013-07-02 07:09:52.000000000 +0000 ++++ qt-everywhere-opensource-src-5.1.0/qtbase/src/sql/drivers/mysql/qsql_mysql_p.h 2013-07-21 21:21:01.190172379 +0000 +@@ -60,7 +60,7 @@ + #include + #endif + +-#include ++#include + + #ifdef QT_PLUGIN + #define Q_EXPORT_SQLDRIVER_MYSQL diff --git a/deps/qt5/patches/qt5.mysql.h.diff.gz b/deps/qt5/patches/qt5.mysql.h.diff.gz deleted file mode 100644 index 6088b7c..0000000 Binary files a/deps/qt5/patches/qt5.mysql.h.diff.gz and /dev/null differ diff --git a/deps/qt5/patches/qt5.pulseaudio.diff b/deps/qt5/patches/qt5.pulseaudio.diff new file mode 100644 index 0000000..8d8f616 --- /dev/null +++ b/deps/qt5/patches/qt5.pulseaudio.diff @@ -0,0 +1,12 @@ +--- qt-everywhere-opensource-src-5.4.0/qtwebengine/src/3rdparty/chromium/media/media.gyp.orig 2014-12-05 17:26:44.000000000 +0100 ++++ qt-everywhere-opensource-src-5.4.0/qtwebengine/src/3rdparty/chromium/media/media.gyp 2014-12-12 10:27:20.393735405 +0100 +@@ -29,7 +29,7 @@ + ['use_cras==1', { + 'use_pulseaudio%': 0, + }, { +- 'use_pulseaudio%': 1, ++ 'use_pulseaudio%': 0, + }], + ], + }, { + diff --git a/deps/qt5/qt5.SlackBuild b/deps/qt5/qt5.SlackBuild index 1abaae0..a76d018 100755 --- a/deps/qt5/qt5.SlackBuild +++ b/deps/qt5/qt5.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 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 @@ -36,28 +36,29 @@ # Alternate method (we don't use this): # wget http://qt.gitorious.org/qt/kde-qt/archive-tarball/4.6.2-patched # -# Modifications 2010, 2011, 2012, 2013, 2014 Eric Hameleers, Eindhoven, NL +# Modifications 2010, 2011, 2012, 2013, 2014, 2015 Eric Hameleers, Eindhoven, NL # qt 4.7.3, 4.7.4, 4.8.0, 4.8.1, 4.8.2, 4.8.4, are built from original nokia sources. # # Modifications for qt 5.2.0 2013 by Michael James, AU # Modifications for qt 5.2.1 2014 by Eric Hameleers, Eindhoven, NL +# Modifications for qt 5.3.1 2014 by Eric Hameleers, Eindhoven, NL +# Modifications for qt 5.4.0 2015 by Eric Hameleers, Eindhoven, NL PKGNAM=qt5 -VERSION=$(ls qt-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev) +VERSION=${VERSION:-5.4.0} BUILD=${BUILD:-1} NUMJOBS=${NUMJOBS:--j7} # Automatically determine the architecture we're building on: -MARCH=$( uname -m ) if [ -z "$ARCH" ]; then - case "$MARCH" in - i?86) export ARCH=i486 ;; - armv7hl) export ARCH=$MARCH ;; - arm*) export ARCH=arm ;; + case "$(uname -m)" in + i?86) ARCH=i486 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7lh ;; # Unless $ARCH is already set, use uname -m for all other archs: - *) export ARCH=$MARCH ;; + *) ARCH=$(uname -m) ;; esac + export ARCH fi if [ "$ARCH" = "i486" ]; then @@ -111,11 +112,14 @@ find . \ -exec chmod 644 {} \; # Fix path to mysql header: -zcat $CWD/patches/qt5.mysql.h.diff.gz | patch -p1 --verbose || exit 1 +cat $CWD/patches/qt5.mysql.h.diff | patch -p1 --verbose || exit 1 + +# Forcibly disable pulseaudio in qtwebengine: +cat $CWD/patches/qt5.pulseaudio.diff | patch -p1 --verbose || exit 1 # Install path fix for libplatformplugin.so: # See https://bugs.webkit.org/show_bug.cgi?id=117077 -zcat $CWD/patches/platformplugin-install-path-fix.patch.gz | patch -p1 --verbose || exit 1 +cat $CWD/patches/platformplugin-install-path-fix.patch | patch -p1 --verbose || exit 1 sed -i -e "s/-O2/$SLKCFLAGS/" qtbase/mkspecs/common/g++-base.conf || exit 1 sed -i -e "s/-O2/$SLKCFLAGS/" qtbase/mkspecs/common/gcc-base.conf || exit 1 @@ -139,7 +143,6 @@ export QT_PLUGIN_PATH="${QTDIR}/qtbase/plugins" -archdatadir /usr/lib${LIBDIRSUFFIX}/qt5 \ -docdir /usr/doc/qt5-$VERSION \ -examplesdir /usr/doc/qt5-$VERSION/examples \ - -system-harfbuzz \ -system-libpng \ -system-libjpeg \ -system-pcre \ @@ -148,20 +151,24 @@ export QT_PLUGIN_PATH="${QTDIR}/qtbase/plugins" -plugin-sql-mysql \ -plugin-sql-sqlite \ -accessibility \ + -alsa \ -dbus \ -glib \ -icu \ -openssl \ -optimized-qmake \ -qpa xcb \ + -qt-harfbuzz \ -reduce-relocations \ -verbose \ -xcb \ -nomake examples \ -nomake tests \ + -no-pulseaudio \ -no-separate-debug-info \ -no-strip \ - -no-pch + -no-use-gold-linker \ + -no-pch \ # No-precompiled-headers is ccache-friendly. # Sometimes a failure happens when parallelizing make. Try again if make fails, @@ -251,17 +258,6 @@ Encoding=UTF-8 Type=Application Categories=Qt;Development; EOF -cat < $PKG/usr/share/applications/qt5-config.desktop -[Desktop Entry] -Name=Qt5 Config -Comment=Configure Qt5 behavior, styles, fonts -Exec=qtconfig-qt5 -qt=5 -Icon=qt5-logo -Terminal=false -Encoding=UTF-8 -Type=Application -Categories=Qt;Settings; -EOF cat < $PKG/usr/share/applications/qt5-qdbusviewer.desktop [Desktop Entry] Name=Qt5 QDbusViewer -- cgit v1.2.3