From 03e1ed04d7a06d039e5dc317638aa5a6b4773f8c Mon Sep 17 00:00:00 2001 From: Eric Hameleers Date: Sat, 24 Jan 2015 19:37:30 +0100 Subject: Add support for Qt4 applications to dock to the Plasma 5 systray. qt-4.8.6: added dep; compared to the Slackware original, I have applied several patches to impement qsystemtrayicon support. sni-qt: added dep; this application actually provides the systray support for Qt4 apps in Plasma 5. --- deps/qt/RCS/qt.SlackBuild,v | 1353 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1353 insertions(+) create mode 100755 deps/qt/RCS/qt.SlackBuild,v (limited to 'deps/qt/RCS/qt.SlackBuild,v') diff --git a/deps/qt/RCS/qt.SlackBuild,v b/deps/qt/RCS/qt.SlackBuild,v new file mode 100755 index 0000000..d73d3e8 --- /dev/null +++ b/deps/qt/RCS/qt.SlackBuild,v @@ -0,0 +1,1353 @@ +head 1.42; +access; +symbols; +locks + eha:1.42; strict; +comment @# @; + + +1.42 +date 2014.04.26.12.06.01; author eha; state Exp; +branches; +next 1.41; + +1.41 +date 2013.10.21.07.29.16; author eha; state Exp; +branches; +next 1.40; + +1.40 +date 2013.08.19.15.31.38; author eha; state Exp; +branches; +next 1.39; + +1.39 +date 2013.04.24.07.22.32; author eha; state Exp; +branches; +next 1.38; + +1.38 +date 2013.04.05.07.03.47; author eha; state Exp; +branches; +next 1.37; + +1.37 +date 2013.03.27.14.39.50; author eha; state Exp; +branches; +next 1.36; + +1.36 +date 2013.03.24.12.53.32; author eha; state Exp; +branches; +next 1.35; + +1.35 +date 2013.02.11.10.57.19; author eha; state Exp; +branches; +next 1.34; + +1.34 +date 2012.08.30.19.16.57; author eha; state Exp; +branches; +next 1.33; + +1.33 +date 2012.08.20.19.22.49; author eha; state Exp; +branches; +next 1.32; + +1.32 +date 2012.08.07.09.43.03; author eha; state Exp; +branches; +next 1.31; + +1.31 +date 2012.07.05.13.41.07; author eha; state Exp; +branches; +next 1.30; + +1.30 +date 2012.05.17.10.01.44; author eha; state Exp; +branches; +next 1.29; + +1.29 +date 2012.04.14.11.45.05; author eha; state Exp; +branches; +next 1.28; + +1.28 +date 2011.03.25.21.18.04; author eha; state Exp; +branches; +next 1.27; + +1.27 +date 2011.03.24.23.50.18; author eha; state Exp; +branches; +next 1.26; + +1.26 +date 2011.03.23.10.16.40; author eha; state Exp; +branches; +next 1.25; + +1.25 +date 2011.01.08.00.58.35; author eha; state Exp; +branches; +next 1.24; + +1.24 +date 2010.11.21.12.44.50; author eha; state Exp; +branches; +next 1.23; + +1.23 +date 2010.05.06.18.14.12; author eha; state Exp; +branches; +next 1.22; + +1.22 +date 2010.02.19.21.20.37; author eha; state Exp; +branches; +next 1.21; + +1.21 +date 2009.11.07.23.09.18; author eha; state Exp; +branches; +next 1.20; + +1.20 +date 2009.11.04.11.01.41; author eha; state Exp; +branches; +next 1.19; + +1.19 +date 2009.10.21.14.03.38; author eha; state Exp; +branches; +next 1.18; + +1.18 +date 2009.10.09.16.16.28; author eha; state Exp; +branches; +next 1.17; + +1.17 +date 2009.08.09.20.37.01; author eha; state Exp; +branches; +next 1.16; + +1.16 +date 2009.08.07.07.56.02; author eha; state Exp; +branches; +next 1.15; + +1.15 +date 2009.08.05.12.14.36; author eha; state Exp; +branches; +next 1.14; + +1.14 +date 2009.05.20.20.16.22; author eha; state Exp; +branches; +next 1.13; + +1.13 +date 2009.05.06.21.54.11; author eha; state Exp; +branches; +next 1.12; + +1.12 +date 2009.05.06.20.42.22; author eha; state Exp; +branches; +next 1.11; + +1.11 +date 2009.05.06.20.39.25; author eha; state Exp; +branches; +next 1.10; + +1.10 +date 2009.04.03.10.00.52; author eha; state Exp; +branches; +next 1.9; + +1.9 +date 2009.03.14.10.30.56; author eha; state Exp; +branches; +next 1.8; + +1.8 +date 2009.03.01.00.08.34; author eha; state Exp; +branches; +next 1.7; + +1.7 +date 2008.12.28.20.11.06; author eha; state Exp; +branches; +next 1.6; + +1.6 +date 2008.12.18.20.55.39; author eha; state Exp; +branches; +next 1.5; + +1.5 +date 2008.12.15.12.20.20; author eha; state Exp; +branches; +next 1.4; + +1.4 +date 2008.11.26.22.54.18; author eha; state Exp; +branches; +next 1.3; + +1.3 +date 2008.10.10.11.44.33; author eha; state Exp; +branches; +next 1.2; + +1.2 +date 2008.10.10.07.54.39; author eha; state Exp; +branches; +next 1.1; + +1.1 +date 2008.10.09.08.57.43; author eha; state Exp; +branches; +next ; + + +desc +@Not adapted yet +@ + + +1.42 +log +@Mass check-in of updated SlackBuilds on Sat Apr 26 12:05:59 UTC 2014 +@ +text +@#!/bin/sh + +# 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 + +# 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. + +PKGNAM=qt +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.xz # 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 + +# Fix path to mysql header +zcat $CWD/qt.mysql.h.diff.gz | patch -p1 --verbose || exit 1 + +# Stupid idea - remove it: +zcat $CWD/qt.webkit-no_Werror.patch.gz | patch -p1 --verbose || exit 1 + +# Fix crash on malformed GIF images (CVE-2014-0190): +zcat $CWD/qt.fix.broken.gif.crash.diff.gz | patch -p1 --verbose || exit 1 + +export CFLAGS="$SLKCFLAGS" +export CXXFLAGS="$SLKCFLAGS" +export OPENSOURCE_CXXFLAGS="$SLKCFLAGS" +./configure \ + -confirm-license \ + -opensource \ + -prefix /usr/lib${LIBDIRSUFFIX}/qt \ + -fast \ + -system-libpng \ + -system-libjpeg \ + -system-zlib \ + -system-sqlite \ + -plugin-sql-sqlite \ + -dbus \ + -webkit \ + -no-phonon \ + -nomake examples \ + -nomake demos \ + -nomake docs \ + -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 + +# The infamous qt -> qt-${VERSION} link that keeps the full path out of .la files: +( cd $PKG/usr/lib${LIBDIRSUFFIX} ; ln -sf qt qt-${VERSION} ) + +# 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}/qt/lib/pkgconfig/Qt.pc +prefix=/usr/lib${LIBDIRSUFFIX}/qt +bindir=\${prefix}/bin +datadir=\${prefix} +docdir=\${prefix}/doc +headerdir=\${prefix}/include +importdir=\${prefix}/imports +libdir=\${prefix}/lib +moc=\${bindir}/moc +plugindir=\${prefix}/plugins +qmake=\${bindir}/qmake +sysconfdir=\${prefix}/etc/settings +translationdir=\${prefix}/translations + +Name: Qt +Description: Qt Configuration +Version: $VERSION +EOF + +# libjscore is used internally. Prevent a false dependency on this in the .la and .pc files: +sed -i "s,-ljscore,,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc +sed -i "s,-L../JavaScriptCore/release,,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc + +# libwebcore is used internally. Prevent a false dependency on this in the .la and .pc files: +sed -i \ + -e "s#-L/usr/lib${LIBDIRSUFFIX}/qt/lib -L../../WebCore/release -L../../JavaScriptCore/release -L/usr/X11R6/lib$LIBDIRSUFFIX -lwebcore##g" \ + -e "s#-L/usr/lib${LIBDIRSUFFIX}/qt/lib -L../../WebCore/release -L../../JavaScriptCore/release -L/usr/X11R6/lib -lwebcore##g" \ + -e "s# -lwebcore##g" \ + $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/libQtWebKit.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/QtWebKit.pc + +# Link the shared libraries into /usr/lib: +( cd $PKG/usr/lib${LIBDIRSUFFIX} + for file in qt/lib/*.so* ; do + ln -sf $file . + done +) + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +# Add profile scripts +mkdir -p $PKG/etc/profile.d +sed -e "s#usr/lib/#usr/lib${LIBDIRSUFFIX}/#g" $CWD/profile.d/qt4.sh \ + > $PKG/etc/profile.d/qt4.sh +sed -e "s#usr/lib/#usr/lib${LIBDIRSUFFIX}/#g" $CWD/profile.d/qt4.csh \ + > $PKG/etc/profile.d/qt4.csh +chmod 0755 $PKG/etc/profile.d/* + +# Put a ton of links to more "normal" places. I'd just use a prefix of /usr, but it +# creates a ton of new (and ambiguously named) /usr directories... +mkdir -p $PKG/usr/bin +( cd $PKG/usr/lib${LIBDIRSUFFIX}/qt/bin + for file in * ; do + ( cd $PKG/usr/bin ; ln -sf /usr/lib${LIBDIRSUFFIX}/qt/bin/$file . ) + done +) + +mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig +( cd $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig + for file in *.pc ; do + ( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig ; ln -sf /usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/$file . ) + done +) + +# Install Qt's private headers - at least Gentoo and Fedora are adding these +# and some software has (inevitably) started depending on them: +# We're using `rsync -R` as easy way to preserve relative path names: +rsync -aR \ + include/Qt{Core,Declarative,Gui,Script}/private \ + src/{corelib,declarative,gui,script}/*/*_p.h \ + ${PKG}/usr/lib${LIBDIRSUFFIX}/qt/ + +# Add menu entries for all those hidden but great Qt applications: +# Qt logo: +convert $PKG/usr/lib$LIBDIRSUFFIX/qt/doc/src/images/qt-logo.png -resize 48x48 $PKG/usr/share/icons/hicolor/48x48/apps/qt-logo.png +convert $PKG/usr/lib$LIBDIRSUFFIX/qt/doc/src/images/qt-logo.png -resize 48x48 $PKG/usr/share/icons/hicolor/48x48/apps/qt-logo.png +# Assistant icons +install -p -m644 -D tools/assistant/tools/assistant/images/assistant.png $PKG/usr/share/icons/hicolor/32x32/apps/assistant.png +install -p -m644 -D tools/assistant/tools/assistant/images/assistant-128.png $PKG/usr/share/icons/hicolor/128x128/apps/assistant.png +# Designer icon +install -p -m644 -D tools/designer/src/designer/images/designer.png $PKG/usr/share/icons/hicolor/128x128/apps/designer.png +# Linguist icons +for icon in tools/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/designer.desktop +[Desktop Entry] +Name=Qt4 Designer +GenericName=Interface Designer +Comment=Design GUIs for Qt4 applications +Exec=designer +Icon=designer +MimeType=application/x-designer; +Terminal=false +Encoding=UTF-8 +Type=Application +Categories=Qt;Development; +EOF +cat < $PKG/usr/share/applications/assistant.desktop +[Desktop Entry] +Name=Qt4 Assistant +Comment=Shows Qt4 documentation and examples +Exec=assistant +Icon=assistant +Terminal=false +Encoding=UTF-8 +Type=Application +Categories=Qt;Development;Documentation; +EOF +cat < $PKG/usr/share/applications/linguist.desktop +[Desktop Entry] +Name=Qt4 Linguist +Comment=Add translations to Qt4 applications +Exec=linguist +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/qtconfig.desktop +[Desktop Entry] +Name=Qt4 Config +Comment=Configure Qt4 behavior, styles, fonts +Exec=qtconfig +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}/qt/doc/html ]; then + ( cd $PKG/usr/doc/$PKGNAM-$VERSION + ln -sf /usr/lib${LIBDIRSUFFIX}/qt/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 + +@ + + +1.41 +log +@Mass check-in of updated SlackBuilds on Mon Oct 21 07:29:12 UTC 2013 +@ +text +@d3 1 +a3 1 +# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA +d44 1 +a44 1 +BUILD=${BUILD:-2} +a109 3 +# gcc doesn't support flag "-fuse-ld=gold": +zcat $CWD/qt.ld-gold.patch.gz | patch -p1 --verbose || exit 1 + +d112 3 +@ + + +1.40 +log +@Mass check-in of updated SlackBuilds on Mon Aug 19 15:31:35 UTC 2013 +@ +text +@d44 1 +a44 1 +BUILD=${BUILD:-1} +d173 5 +a177 1 +sed -i "s#-L/usr/lib${LIBDIRSUFFIX}/qt/lib -L../../WebCore/release -L../../JavaScriptCore/release -L/usr/X11R6/lib$LIBDIRSUFFIX -lwebcore##g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/libQtWebKit.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/QtWebKit.pc +@ + + +1.39 +log +@Mass check-in of updated SlackBuilds on Wed Apr 24 07:22:29 UTC 2013 +@ +text +@d44 1 +a44 1 +BUILD=${BUILD:-5} +a114 6 + +# Patch for boost-1.53: +zcat $CWD/qt-everywhere-opensource-src-4.8.4-QTBUG-22829.diff.gz | patch -p1 --verbose || exit 1 + +# Fix call to QMetaObject::metaCall from updateProperty (QTBUG-29082): +zcat $CWD/qt-fix-qvmemetadata-crash.patch.gz | patch -p1 --verbose || exit 1 +@ + + +1.38 +log +@Mass check-in of updated SlackBuilds on Fri Apr 5 07:03:44 UTC 2013 +@ +text +@d44 1 +a44 1 +BUILD=${BUILD:-4} +d118 3 +@ + + +1.37 +log +@Mass check-in of updated SlackBuilds on Wed Mar 27 14:39:47 UTC 2013 +@ +text +@d3 1 +a3 1 +# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA +d44 1 +a44 1 +BUILD=${BUILD:-3} +d289 5 +a293 3 +( cd $PKG/usr/doc/$PKGNAM-$VERSION + ln -sf /usr/lib${LIBDIRSUFFIX}/qt/doc/html . +) +@ + + +1.36 +log +@Mass check-in of updated SlackBuilds on Sun Mar 24 12:53:28 UTC 2013 +@ +text +@d44 1 +a44 1 +BUILD=${BUILD:-2} +d115 3 +@ + + +1.35 +log +@Mass check-in of updated SlackBuilds on Mon Feb 11 10:57:15 UTC 2013 +@ +text +@d44 1 +a44 1 +BUILD=${BUILD:-1} +@ + + +1.34 +log +@Mass check-in of updated SlackBuilds on Thu Aug 30 19:16:54 UTC 2012 +@ +text +@d40 1 +a40 1 +# qt 4.7.3, 4.7.4, 4.8.0, 4.8.1, 4.8.2 are built from original nokia sources. +d44 1 +a44 1 +BUILD=${BUILD:-4} +a115 14 +# Fix cursor position bug within tables: +zcat $CWD/qt.ca89c49.cursor.position.diff.gz | patch -p1 --verbose || exit 1 + +# Fix assistant crash: +zcat $CWD/qt.assistant.memcpy-crash.diff.gz | patch -p0 --verbose || exit 1 + +# Fix webkit compiling with recent glib: +zcat $CWD/qt.webkit.glib.diff.gz | patch -p1 --verbose || exit 1 + +# Some patches from upstream: +zcat $CWD/QElfParser-fix-type-of-sh_size.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/QTBUG-14724_close_orphaned_file_descriptors_after_printing.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/QTBUG-21900_Buttons_in_Qt_applications_not_clickable_when_run_under_gnome-shell.patch.gz | patch -p1 --verbose || exit 1 + +d134 1 +d208 8 +@ + + +1.33 +log +@Mass check-in of updated SlackBuilds on Mon Aug 20 19:22:46 UTC 2012 +@ +text +@d44 1 +a44 1 +BUILD=${BUILD:-3} +a123 3 + +# Fix JIT crashes affecting Kate, KDevelop, maybe others: +zcat $CWD/qt.fix.jit.crash.diff.gz | patch -p1 --verbose || exit 1 +@ + + +1.32 +log +@Mass check-in of updated SlackBuilds on Tue Aug 7 09:43:00 UTC 2012 +@ +text +@d44 1 +a44 1 +BUILD=${BUILD:-2} +d124 3 +@ + + +1.31 +log +@Mass check-in of updated SlackBuilds on Thu Jul 5 13:41:05 UTC 2012 +@ +text +@d44 1 +a44 1 +BUILD=${BUILD:-1} +d122 3 +d181 1 +a181 1 +# libjscore is used internally. Prevent a false dependency on this in the .la files: +d184 3 +@ + + +1.30 +log +@Mass check-in of updated SlackBuilds on Thu May 17 10:01:33 UTC 2012 +@ +text +@d40 1 +a40 1 +# qt 4.7.3, 4.7.4, 4.8.0, 4.8.1 are built from original nokia sources. +d44 1 +a44 1 +BUILD=${BUILD:-2} +d104 1 +a104 2 + sed -i -e "s/QMAKE_CFLAGS_RELEASE += -O2/QMAKE_CFLAGS_RELEASE += $SLKCFLAGS/" mkspecs/common/g++.conf || exit 1 + #zcat $CWD/qt.x86.cflags.diff.gz | patch -p1 || exit 1 +a109 10 +## Fix broken QUrl_toLocalFile function which disables KDE sound (QTBUG-22382): +# Fixed in qt 4.8.1 +#zcat $CWD/qt.QUrl_toLocalFile.patch.gz | patch -p1 --verbose || exit 1 + +## Patch for security issue CVE-2011-3922: +#zcat $CWD/qt.CVE-2011-3922.patch.gz | patch -p1 --verbose || exit 1 + +# Patch for the use of gcc 4.7: +zcat $CWD/qt.gcc47.patch.gz | patch -p1 --verbose || exit 1 + +d116 10 +a125 2 +# Fix for a crash bug which affects Qt 4.8.0 and 4.8.1: +zcat $CWD/qt.qtbug-24718.patch.gz | patch -p1 --verbose || exit 1 +a187 5 + +if [ $ARCH = "i486" ]; then + # Put this back as shipped: + zcat $CWD/qt.x86.cflags.diff.gz | patch -p1 -R +fi +@ + + +1.29 +log +@Mass check-in of updated SlackBuilds on Sat Apr 14 11:45:03 UTC 2012 +@ +text +@d3 1 +a3 1 +# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA +d44 1 +a44 1 +BUILD=${BUILD:-1} +@ + + +1.28 +log +@Mass check-in of updated SlackBuilds on Fri Mar 25 21:18:02 UTC 2011 +@ +text +@d38 3 +d43 4 +a46 2 +VERSION=$(ls qt-*.tar.?z* | cut -d - -f 2 | rev | cut -f 3- -d . | rev) +BUILD=${BUILD:-3} +d49 1 +d51 4 +a54 3 + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; +d56 1 +a56 1 + *) export ARCH=$( uname -m ) ;; +a59 2 +NUMJOBS=${NUMJOBS:--j7} + +d69 6 +d80 5 +d92 3 +a94 17 +#rm -rf qt-x11-opensource-src-$VERSION +#tar xvf $CWD/qt-x11-opensource-src-$VERSION.tar.gz # For qt releases +#cd qt-x11-opensource-src-$VERSION || exit 1 + +rm -rf qt-$VERSION +if [ -r $CWD/qt-$VERSION.tar.gz ]; then + tar xvf $CWD/qt-$VERSION.tar.gz || exit 1 +elif [ -r $CWD/qt-$VERSION.tar.bz2 ]; then + tar xvf $CWD/qt-$VERSION.tar.bz2 || exit 1 +elif [ -r $CWD/qt-$VERSION.tar.xz ]; then + tar xvf $CWD/qt-$VERSION.tar.xz || exit 1 +elif [ -r $CWD/qt-$VERSION.tar.lzma ]; then + tar xvf $CWD/qt-$VERSION.tar.lzma || exit 1 +else + exit 1 +fi +cd qt-$VERSION || exit 1 +a102 9 +# apply_patches looks for a ".svn" directory, which doesn't exist in the used snapshot. +# removing the check from apply_patches to not try to apply already applied patches +sed -i "s| test -d .svn &&||" apply_patches + +# This is only needed/wanted for qt-copy (the r###### version) that we're +# building right now. It might require manual intervention, so don't walk +# away during the build +./apply_patches + +d104 2 +a105 1 + zcat $CWD/qt.x86.cflags.diff.gz | patch -p1 || exit 1 +d111 12 +a122 2 +# Upstream patch required for upcoming kdepim-4.6.x: +zcat $CWD/qt.QSortFilterProxyModel.reformatted.diff.gz | patch -p1 --verbose || exit 1 +d124 5 +a128 3 +# Blacklist compromised certificates: +zcat $CWD/qt.blacklist.bad.certs.diff.gz | patch -p1 --verbose || exit 1 +zcat $CWD/qt.blacklist.bad.certs.patch02.diff.gz | patch -p1 --verbose || exit 1 +a136 1 + -qt-gif \ +d160 21 +d223 65 +@ + + +1.27 +log +@Mass check-in of updated SlackBuilds on Thu Mar 24 23:50:16 UTC 2011 +@ +text +@d122 1 +@ + + +1.26 +log +@Mass check-in of updated SlackBuilds on Wed Mar 23 10:16:37 UTC 2011 +@ +text +@d120 3 +@ + + +1.25 +log +@Mass check-in of updated SlackBuilds on Sat Jan 8 00:58:32 UTC 2011 +@ +text +@d41 1 +a41 1 +BUILD=${BUILD:-2} +d151 4 +@ + + +1.24 +log +@Mass check-in of updated SlackBuilds on Sun Nov 21 12:44:48 UTC 2010 +@ +text +@d3 1 +a3 1 +# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA +d41 1 +a41 1 +BUILD=${BUILD:-1} +d115 4 +a118 1 +zcat $CWD/qt.mysql.h.diff.gz | patch -p1 || exit 1 +@ + + +1.23 +log +@Mass check-in of updated SlackBuilds on Thu May 6 18:14:09 UTC 2010 +@ +text +@d34 3 +@ + + +1.22 +log +@Mass check-in of updated SlackBuilds on Fri Feb 19 21:20:35 UTC 2010 +@ +text +@d32 3 +d38 1 +a38 1 +BUILD=${BUILD:-4} +d61 3 +d111 1 +a111 1 +# Fix path to mysql header: +a113 5 +# libpng 1.4.0 support (backported from the qt-4.6 branch): +zcat $CWD/qt.png14.diff.gz | patch -p1 || exit 1 + +# The "o" selects the Open Source edition of Qt. +# The "yes" agrees to the GPL, so don't run this script if you don't agree. :-) +d117 3 +a119 2 +echo "o +yes" | ./configure \ +d125 1 +d127 1 +a127 1 + -system-zlib \ +d130 1 +a130 2 + -phonon \ + -no-phonon-backend \ +d133 3 +a135 1 + -no-separate-debug-info +@ + + +1.21 +log +@Mass check-in of updated SlackBuilds on Sat Nov 7 23:09:08 UTC 2009 +@ +text +@d3 1 +a3 1 +# Copyright 2006, 2007, 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +d35 1 +a35 1 +BUILD=${BUILD:-3} +d105 1 +a105 1 +# Fix path to mysql header +d108 3 +@ + + +1.20 +log +@Mass check-in of updated SlackBuilds on Wed Nov 4 11:01:39 UTC 2009 +@ +text +@d35 1 +a35 1 +BUILD=${BUILD:-2} +d37 1 +a37 1 +# Automatically determine architecture for build & packaging: +d41 1 +d43 1 +a43 1 + *) export ARCH=$( uname -m ) ;; +d124 2 +@ + + +1.19 +log +@Mass check-in of updated SlackBuilds on Wed Oct 21 14:03:36 UTC 2009 +@ +text +@d35 10 +a44 2 +ARCH=${ARCH:-x86_64} +BUILD=${BUILD:-1} +a122 1 + -no-phonon \ +@ + + +1.18 +log +@Mass check-in of updated SlackBuilds on Fri Oct 9 16:16:24 UTC 2009 +@ +text +@d26 6 +a31 2 +# We're using qt-copy instead of a released qt version, as this svn release +# has at least one bugfix strongly recommended by the kde developers +d111 1 +@ + + +1.17 +log +@Mass check-in of updated SlackBuilds on Sun Aug 9 20:36:59 UTC 2009 +@ +text +@d30 1 +a30 1 +VERSION=$(ls qt-r*.tar.?z* | cut -d - -f 2 | cut -f 1 -d . | tail -1) +@ + + +1.16 +log +@Mass check-in of updated SlackBuilds on Fri Aug 7 07:55:59 UTC 2009 +@ +text +@d149 3 +a151 8 +( cd $PKG/usr/bin + for file in \ + assistant assistant_adp designer lconvert linguist lrelease \ + lupdate moc pixeltool qcollectiongenerator qdbus qdbuscpp2xml qdbusviewer \ + qdbusxml2cpp qhelpconverter qhelpgenerator qmake qt3to4 qtconfig rcc uic \ + uic3 xmlpatterns ; + do + ln -sf /usr/lib${LIBDIRSUFFIX}/qt/bin/$file . +d156 3 +a158 7 +( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig + for file in Qt3Support.pc QtAssistantClient.pc QtCLucene.pc \ + QtCore.pc QtDBus.pc QtDesigner.pc QtDesignerComponents QtGui.pc \ + QtHelp.pc QtNetwork.pc QtOpenGL.pc QtScript.pc QtScriptTools.pc QtSql.pc \ + QtSvg.pc QtTest.pc QtUiTools.pc QtWebKit.pc QtXml.pc QtXmlPatterns.pc ; + do + ln -sf /usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/$file . ; +@ + + +1.15 +log +@Mass check-in of updated SlackBuilds on Wed Aug 5 12:14:34 UTC 2009 +@ +text +@d79 3 +a81 5 +# Just skip the patches it complains about... easy enough. +## Get rid of already applied patches (if any): +#if [ -r $CWD/remove-already-applied-patches.diff.gz ]; then +# zcat $CWD/remove-already-applied-patches.diff.gz | patch -p1 --verbose || exit 1 +#fi +d95 1 +d112 2 +a113 1 + -nomake demos +d151 4 +a154 2 + assistant designer linguist lrelease lupdate moc pixeltool qdbus \ + qdbuscpp2xml qdbusviewer qdbusxml2cpp qmake qt3to4 qtconfig rcc uic uic3 ; +d162 4 +a165 3 + for file in Qt3Support.pc QtAssistantClient.pc QtCore.pc \ + QtDBus.pc QtGui.pc QtNetwork.pc QtOpenGL.pc QtScript.pc \ + QtSql.pc QtSvg.pc QtTest.pc QtUiTools.pc QtXml.pc ; +@ + + +1.14 +log +@Auto-import of Pat's changes after public release of slackware64, Wed May 20 20:16:21 UTC 2009 +@ +text +@d125 1 +a125 1 + for file in qt-$VERSION/lib/*.so* ; do +d154 1 +a154 1 + ln -sf /usr/lib${LIBDIRSUFFIX}/qt-$VERSION/bin/$file . +d164 1 +a164 1 + ln -sf /usr/lib${LIBDIRSUFFIX}/qt-$VERSION/lib/pkgconfig/$file . ; +@ + + +1.13 +log +@Some doc filenames changed +@ +text +@a44 6 +elif [ "$ARCH" = "arm" ]; then + SLKCFLAGS="-O2 -march=armv4 -mtune=xscale" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "armel" ]; then + SLKCFLAGS="-O2 -march=armv4t" + LIBDIRSUFFIX="" +@ + + +1.12 +log +@Add ARM flags +@ +text +@d176 1 +a176 2 +cp -a GPL_EXCEPTION.TXT GPL_EXCEPTION_ADDENDUM.TXT INSTALL LICENSE.GPL \ + LICENSE.QPL OPENSOURCE-NOTICE.TXT README changes-$VERSION \ +d187 1 +a187 1 +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.tgz +@ + + +1.11 +log +@Updated for r964497 +@ +text +@d45 6 +@ + + +1.10 +log +@Updated to r948357 +@ +text +@d57 1 +d59 11 +a69 1 +tar xvf $CWD/qt-$VERSION.tar.bz2 || exit 1 +d101 2 +a102 1 +echo "yes" | ./configure \ +@ + + +1.9 +log +@Rebuild against freetype-2.3.9 +@ +text +@d32 1 +a32 1 +BUILD=${BUILD:-2} +@ + + +1.8 +log +@Added 2009 to the copyright line +@ +text +@d32 2 +a33 1 +BUILD=${BUILD:-1} +@ + + +1.7 +log +@Update to 895466; get rid of phonon +@ +text +@d3 1 +a3 1 +# Copyright 2006, 2007, 2008 Patrick J. Volkerding, Sebeka, MN, USA +@ + + +1.6 +log +@Add phonon support +@ +text +@d98 1 +a98 1 + -phonon \ +@ + + +1.5 +log +@Only use most recent snapshot if we have more +@ +text +@d98 1 +a98 1 + -no-phonon \ +@ + + +1.4 +log +@Update to qt-copy-r887099 +@ +text +@d30 1 +a30 1 +VERSION=$(ls qt-r*.tar.?z* | cut -d - -f 2 | cut -f 1 -d .) +@ + + +1.3 +log +@Missed one '${LIBDIRSUFFIX}' +@ +text +@d67 5 +a71 4 +# Get rid of already applied patches (if any): +if [ -r $CWD/remove-already-applied-patches.diff.gz ]; then + zcat $CWD/remove-already-applied-patches.diff.gz | patch -p1 --verbose || exit 1 +fi +@ + + +1.2 +log +@Skip qt3, move to qt4 +@ +text +@d159 3 +a161 1 +( cd $PKG/usr/doc/$PKGNAM-$VERSION ; ln -sf /usr/lib/qt/doc/html . ) +@ + + +1.1 +log +@Fix NUMJOBS definition +@ +text +@d2 1 +d23 6 +d30 1 +a30 1 +VERSION=${VERSION:-3.3.8b} +d32 2 +a33 7 +BUILD=${BUILD:-2} + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-${PKGNAM} +rm -rf $PKG +mkdir -p $TMP $PKG +d46 30 +a75 12 +#cd $TMP +# I have *many* times tried building this package in /tmp, and it always +# ends up with a "/tmp" directory embedded in some wrong place. Hopefully +# the next time I see this comment I'll remember that and not make the +# same mistake again just for the sake of doing things "right" (but having +# the package come out wrong...) +#rm -rf ${PKGNAM}-${VERSION} +cd /usr/lib${LIBDIRSUFFIX} +rm -rf qt qt-3.* +tar xjvf $CWD/qt-x11-free-$VERSION.tar.bz2 || exit 1 +mv qt-x11-free-$VERSION qt +cd qt +d81 1 +a81 1 +zcat $CWD/qt-x11.diff.gz | patch -p1 || exit 1 +d84 20 +a103 38 +# Make sure ownerships and permissions are sane: +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 {} \; + +# And here's what we are currently using. The "yes" agrees to the GPL, +# so don't run this script if you don't agree. :-) +echo "yes" | CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" ./configure \ + -prefix /usr/lib${LIBDIRSUFFIX}/qt-${VERSION} \ + -release \ + -system-zlib \ + -system-libpng \ + -qt-imgfmt-png \ + -system-libmng \ + -qt-imgfmt-mng \ + -system-libjpeg \ + -qt-imgfmt-jpeg \ + -qt-gif \ + -thread \ + -stl \ + -no-g++-exceptions \ + -xft \ + -plugin-sql-mysql \ + -plugin-style-cde \ + -plugin-style-compact \ + -qt-style-motif \ + -plugin-style-motifplus \ + -plugin-style-platinum \ + -plugin-style-sgi \ + -plugin-style-windows \ + -enable-opengl + +# We're using '-i' to work around a bug where the build tries to strip html files. +# Build the important stuff: +make -j5 -i symlinks sub-src sub-tools || exit 1 +d106 2 +a107 2 +# The infamous qt -> qt-${VERSION} link that lets us cheat on the QTDIR ;-) +( cd $PKG/usr/lib${LIBDIRSUFFIX} ; ln -sf qt-${VERSION} qt) +d109 1 +a109 1 +# Link the shared libraries into /usr/lib${LIBDIRSUFFIX}: +d111 1 +a111 1 + for file in qt/lib/*.so* ; do # _no_ ${LIBDIRSUFFIX} +a115 5 +# Add man pages: +mkdir -p $PKG/usr/man +cp -a doc/man/* $PKG/usr/man +find $PKG/usr/man -type f -exec gzip -9 "{}" \; + +d118 1 +a118 2 + ( cd $PKG/usr/lib/qt + zcat $CWD/qt.x86.cflags.diff.gz | patch -p1 -R ) +d121 4 +d126 5 +a130 12 +cat $CWD/profile.d/qt.sh > $PKG/etc/profile.d/qt.sh +cat $CWD/profile.d/qt.csh > $PKG/etc/profile.d/qt.csh +chmod 755 $PKG/etc/profile.d/* + +# Strip binaries: +( 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 +) + +# Put a ton of links to more "normal" places. I'd just use a prefix of /usr, +# but it creates a ton of new (and ambiguously named) /usr directories... +d132 2 +d136 5 +a140 2 + for file in assistant designer linguist lrelease lupdate moc qm2ts qmake qtconfig uic ; do + ln -sf /usr/lib${LIBDIRSUFFIX}/qt/bin/$file . +d146 6 +a151 1 + ln -sf /usr/lib${LIBDIRSUFFIX}/qt-${VERSION}/lib/pkgconfig/qt-mt.pc . +d155 5 +a159 5 +mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION +cp -a \ + FAQ INSTALL LICENSE.GPL* LICENSE.QPL MANIFEST PLATFORMS README* changes* \ + $PKG/usr/doc/${PKGNAM}-$VERSION +( cd $PKG/usr/doc/${PKGNAM}-$VERSION ; ln -sf /usr/lib${LIBDIRSUFFIX}/qt-${VERSION}/doc/html . ) +d166 1 +a166 1 +makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.tgz +@ -- cgit v1.2.3