diff options
Diffstat (limited to 'extra/source/kde3-compat')
20 files changed, 642 insertions, 0 deletions
diff --git a/extra/source/kde3-compat/arts/arts.SlackBuild b/extra/source/kde3-compat/arts/arts.SlackBuild new file mode 100755 index 000000000..a617c18c5 --- /dev/null +++ b/extra/source/kde3-compat/arts/arts.SlackBuild @@ -0,0 +1,57 @@ +#!/bin/sh +CWD=`pwd` +TMP=/tmp +PKG=$TMP/package-arts + +VERSION=${VERSION:-1.5.10} +ARCH=${ARCH:-x86_64} +BUILD=${BUILD:-opt1} + +rm -rf $PKG +mkdir -p $PKG/opt/kde3 + +# Avoid a version number in .la files: +if [ -d /opt/kde3/lib64/qt3 ]; then + QTDIR=/opt/kde3/lib64/qt3 +fi +cd $TMP +echo "Building arts-$VERSION.tar.bz2..." +tar xjvf $CWD/arts-$VERSION.tar.bz2 +cd arts-$VERSION + +QTDIR=/opt/kde3/lib64/qt3 + +zcat $CWD/arts.tmpdir.diff.gz | patch -p1 --verbose || exit 1 + +chown -R root:root . +CFLAGS=$CPUOPT \ +CXXFLAGS=$CPUOPT \ +./configure \ + --prefix=/opt/kde3 \ + --libdir=/opt/kde3/lib64 \ + --sysconfdir=/opt/kde3/etc \ + --with-xinerama \ + --disable-debug \ + --program-prefix="" \ + --program-suffix="" \ + --build=$ARCH-slackware-linux +make -j4 || exit 1 +make install DESTDIR=$PKG + +mkdir -p $PKG/usr/doc/arts-$VERSION +cp -a \ + COPYING* INSTALL doc/NEWS doc/README doc/TODO \ + $PKG/usr/doc/arts-$VERSION +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +( 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 +) +if [ -d $PKG/usr/man ]; then + gzip -9 $PKG/usr/man/man?/* +fi + +cd $PKG +makepkg -l y -c n ../arts-$VERSION-$ARCH-$BUILD.txz + diff --git a/extra/source/kde3-compat/arts/arts.tmpdir.diff b/extra/source/kde3-compat/arts/arts.tmpdir.diff new file mode 100644 index 000000000..f50472a1e --- /dev/null +++ b/extra/source/kde3-compat/arts/arts.tmpdir.diff @@ -0,0 +1,17 @@ +--- ./mcop/mcoputils.cc.orig 2006-01-19 10:16:08.000000000 -0600 ++++ ./mcop/mcoputils.cc 2006-09-19 17:07:50.000000000 -0500 +@@ -47,7 +47,13 @@ + result = lstat(tmp_dir, &stat_buf); + if ((result == -1) && (errno == ENOENT)) + { +- return 1; ++ result = mkdir(tmp_dir, 0700); ++ if (result == -1) ++ { ++ arts_warning("Error: Can not create directory \"%s\".\n", tmp_dir); ++ return 1; ++ } ++ result = stat(tmp_dir, &stat_buf); + } + if ((result == -1) || (!S_ISDIR(stat_buf.st_mode))) + { diff --git a/extra/source/kde3-compat/arts/slack-desc b/extra/source/kde3-compat/arts/slack-desc new file mode 100644 index 000000000..c7b45613d --- /dev/null +++ b/extra/source/kde3-compat/arts/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +arts: arts (Analog Realtime Synthesizer) +arts: +arts: aRts is the core sound system for KDE, and is short for "analog +arts: realtime synthesizer". aRts is designed to create or process sound +arts: using small specialized modules. These may create a waveform, play +arts: samples, filter data, add signals, perform effects (like delay, +arts: flanger or chorus), or output the data to the soundcard. +arts: +arts: +arts: +arts: diff --git a/extra/source/kde3-compat/k3b3/k3b3.SlackBuild b/extra/source/kde3-compat/k3b3/k3b3.SlackBuild new file mode 100755 index 000000000..186fbe7b9 --- /dev/null +++ b/extra/source/kde3-compat/k3b3/k3b3.SlackBuild @@ -0,0 +1,67 @@ +#!/bin/sh +CWD=`pwd` +TMP=${TMP:-/tmp} +PKG=$TMP/package-k3b3 + +VERSION=1.0.5 +ARCH=${ARCH:-x86_64} +BUILD=opt1 + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2" +fi + +if [ ! -d $TMP ]; then + mkdir -p $TMP +fi +rm -rf $PKG +mkdir -p $PKG +cd $TMP +rm -rf k3b-$VERSION +tar xjvf $CWD/k3b-$VERSION.tar.bz2 || exit 1 +cd k3b-$VERSION +chown -R root:root . +find . -perm 777 -exec chmod 755 {} \; +find . -perm 664 -exec chmod 644 {} \; + +QTDIR=/opt/kde3/lib64/qt3 + +# ./configure --help lists --docdir, but it is ignored. Oh well. +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/opt/kde3 \ + --libdir=/opt/kde3/lib64 \ + --sysconfdir=/etc/kde \ + --docdir=/usr/doc \ + --without-cdrecord-suid-root \ + --program-prefix="" \ + --program-suffix="" \ + --build=$ARCH-slackware-linux +make -j4 || exit 1 +make install DESTDIR=$PKG + +# Add a .desktop in the compatible location: +mkdir -p $PKG/usr/share/applications/kde4 +( cd $PKG/usr/share/applications/kde4 ; ln -sf /opt/kde3/share/applications/kde/k3b.desktop k3b3.desktop ) + +( 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 +) +mkdir -p $PKG/usr/doc/k3b-$VERSION +cp -a \ + AUTHORS COPYING COPYING-DOCS ChangeLog FAQ INSTALL KNOWNBUGS PERMISSIONS README RELEASE_HOWTO TODO k3b.lsm \ + $PKG/usr/doc/k3b-$VERSION +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +makepkg -l y -c n $TMP/k3b3-$VERSION-$ARCH-$BUILD.txz + diff --git a/extra/source/kde3-compat/k3b3/slack-desc b/extra/source/kde3-compat/k3b3/slack-desc new file mode 100644 index 000000000..52856f6a3 --- /dev/null +++ b/extra/source/kde3-compat/k3b3/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' on +# the right side marks the last column you can put a character in. You must make +# exactly 11 lines for the formatting to be correct. It's also customary to +# leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +k3b3: k3b3 (The CD Creator, KDE3 version) +k3b3: +k3b3: K3b makes writing cds under Linux easy. It has an easy to use +k3b3: interface and supports CD burning (including on-the-fly), copying, +k3b3: erasing, ripping, and more. +k3b3: +k3b3: K3b was written by Sebastian Trueg, Thomas Froescher, +k3b3: Christian Kvasny, and Klaus-Dieter Krannich. +k3b3: +k3b3: For more information, visit: http://www.k3b.org +k3b3: diff --git a/extra/source/kde3-compat/kdelibs3/apply-patches.sh b/extra/source/kde3-compat/kdelibs3/apply-patches.sh new file mode 100644 index 000000000..68190b0b2 --- /dev/null +++ b/extra/source/kde3-compat/kdelibs3/apply-patches.sh @@ -0,0 +1,3 @@ +zcat $CWD/kdelibs-utempter.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 +zcat $CWD/kdelibs.inotify.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 +zcat $CWD/kdelibs.no.inotify.externs.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 diff --git a/extra/source/kde3-compat/kdelibs3/kdelibs-utempter.diff b/extra/source/kde3-compat/kdelibs3/kdelibs-utempter.diff new file mode 100644 index 000000000..4f7c8f3a0 --- /dev/null +++ b/extra/source/kde3-compat/kdelibs3/kdelibs-utempter.diff @@ -0,0 +1,23 @@ +diff -Naur kdelibs-3.5.7.orig/kdecore/kpty.cpp kdelibs-3.5.7/kdecore/kpty.cpp +--- kdelibs-3.5.7.orig/kdecore/kpty.cpp 2006-05-22 19:14:21.000000000 +0100 ++++ kdelibs-3.5.7/kdecore/kpty.cpp 2007-06-10 14:08:18.000000000 +0100 +@@ -401,7 +401,9 @@ + #ifdef HAVE_UTEMPTER + KProcess_Utmp utmp; + utmp.cmdFd = d->masterFd; +- utmp << "/usr/sbin/utempter" << "-a" << d->ttyName << ""; ++ utmp << "/usr/lib/utempter/utempter" << "add"; ++ if (remotehost) ++ utmp << remotehost; + utmp.start(KProcess::Block); + Q_UNUSED(user); + Q_UNUSED(remotehost); +@@ -444,7 +446,7 @@ + #ifdef HAVE_UTEMPTER + KProcess_Utmp utmp; + utmp.cmdFd = d->masterFd; +- utmp << "/usr/sbin/utempter" << "-d" << d->ttyName; ++ utmp << "/usr/lib/utempter/utempter" << "del"; + utmp.start(KProcess::Block); + #elif defined(USE_LOGIN) + const char *str_ptr = d->ttyName.data(); diff --git a/extra/source/kde3-compat/kdelibs3/kdelibs.inotify.diff b/extra/source/kde3-compat/kdelibs3/kdelibs.inotify.diff new file mode 100644 index 000000000..791b5e683 --- /dev/null +++ b/extra/source/kde3-compat/kdelibs3/kdelibs.inotify.diff @@ -0,0 +1,11 @@ +--- ./kio/kio/kdirwatch.cpp.orig 2006-07-22 03:16:37.000000000 -0500 ++++ ./kio/kio/kdirwatch.cpp 2009-06-18 19:27:38.000000000 -0500 +@@ -71,7 +71,7 @@ + #include <linux/types.h> + // Linux kernel headers are documented to not compile + #define _S390_BITOPS_H +-#include <linux/inotify.h> ++#include <sys/inotify.h> + + static inline int inotify_init (void) + { diff --git a/extra/source/kde3-compat/kdelibs3/kdelibs.no.inotify.externs.diff b/extra/source/kde3-compat/kdelibs3/kdelibs.no.inotify.externs.diff new file mode 100644 index 000000000..ef06c1dce --- /dev/null +++ b/extra/source/kde3-compat/kdelibs3/kdelibs.no.inotify.externs.diff @@ -0,0 +1,37 @@ +--- ./kio/kio/kdirwatch.cpp.orig 2009-06-18 19:29:01.000000000 -0500 ++++ ./kio/kio/kdirwatch.cpp 2009-06-18 19:32:41.000000000 -0500 +@@ -73,20 +73,20 @@ + #define _S390_BITOPS_H + #include <sys/inotify.h> + +-static inline int inotify_init (void) +-{ +- return syscall (__NR_inotify_init); +-} +- +-static inline int inotify_add_watch (int fd, const char *name, __u32 mask) +-{ +- return syscall (__NR_inotify_add_watch, fd, name, mask); +-} +- +-static inline int inotify_rm_watch (int fd, __u32 wd) +-{ +- return syscall (__NR_inotify_rm_watch, fd, wd); +-} ++// static inline int inotify_init (void) ++// { ++// return syscall (__NR_inotify_init); ++// } ++ ++// static inline int inotify_add_watch (int fd, const char *name, __u32 mask) ++// { ++// return syscall (__NR_inotify_add_watch, fd, name, mask); ++// } ++ ++// static inline int inotify_rm_watch (int fd, __u32 wd) ++// { ++// return syscall (__NR_inotify_rm_watch, fd, wd); ++// } + + #ifndef IN_ONLYDIR + #define IN_ONLYDIR 0x01000000 diff --git a/extra/source/kde3-compat/kdelibs3/kdelibs3.SlackBuild b/extra/source/kde3-compat/kdelibs3/kdelibs3.SlackBuild new file mode 100755 index 000000000..d197ea32f --- /dev/null +++ b/extra/source/kde3-compat/kdelibs3/kdelibs3.SlackBuild @@ -0,0 +1,68 @@ +#!/bin/sh +CWD=`pwd` +TMP=/tmp +PKG=$TMP/package-kdelibs + +# 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 + +rm -rf $PKG +mkdir -p $PKG/usr + +# Avoid a version number in .la files: +if [ -d /opt/kde3/lib64/qt ]; then + QTDIR=/opt/kde3/lib64/qt3 +fi + +cd $TMP +echo "Building kdelibs-$VERSION.tar.bz2..." +tar xjvf $CWD/kdelibs-$VERSION.tar.bz2 || exit 1 +cd kdelibs-$VERSION || exit 1 + +if [ -r $CWD/apply-patches.sh ]; then + . $CWD/apply-patches.sh +fi + +chown -R root:root . +CFLAGS=$CPUOPT \ +CXXFLAGS=$CPUOPT \ +./configure \ + --prefix=/opt/kde3 \ + --libdir=/opt/kde3/lib64 \ + --sysconfdir=/opt/kde3/etc \ + --with-ssl-dir=/usr \ + --with-xinerama \ + --disable-debug \ + --enable-dnotify \ + --program-prefix="" \ + --program-suffix="" \ + --build=$TARGET-slackware-linux + +make $NUMJOBS || exit 1 +make install DESTDIR=$PKG + +mkdir -p $PKG/usr/doc/kdelibs-$VERSION +cp -a \ + AUTHORS COMPILING COMPILING.html COPYING* DEBUG INSTALL KDE2PORTING.html KDE3PORTING.html NAMING README kdelibs.lsm \ + $PKG/usr/doc/kdelibs-$VERSION +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +( 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 +) +if [ -d $PKG/usr/man ]; then + gzip -9 $PKG/usr/man/man?/* +fi + +cd $PKG +makepkg -l y -c n ../kdelibs3-$VERSION-$ARCH-$BUILD.txz + diff --git a/extra/source/kde3-compat/kdelibs3/local.options b/extra/source/kde3-compat/kdelibs3/local.options new file mode 100644 index 000000000..056703278 --- /dev/null +++ b/extra/source/kde3-compat/kdelibs3/local.options @@ -0,0 +1,4 @@ +VERSION=3.5.10 +ARCH=x86_64 +TARGET=x86_64 +BUILD=opt1 diff --git a/extra/source/kde3-compat/kdelibs3/slack-desc b/extra/source/kde3-compat/kdelibs3/slack-desc new file mode 100644 index 000000000..b6e75d1d5 --- /dev/null +++ b/extra/source/kde3-compat/kdelibs3/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' on +# the right side marks the last column you can put a character in. You must make +# exactly 11 lines for the formatting to be correct. It's also customary to +# leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +kdelibs3: kdelibs3 (KDE3 runtime libraries) +kdelibs3: +kdelibs3: System libraries and other resources required by KDE3. +kdelibs3: +kdelibs3: +kdelibs3: +kdelibs3: +kdelibs3: +kdelibs3: +kdelibs3: +kdelibs3: diff --git a/extra/source/kde3-compat/qt3/doinst.sh b/extra/source/kde3-compat/qt3/doinst.sh new file mode 100644 index 000000000..d57fb0319 --- /dev/null +++ b/extra/source/kde3-compat/qt3/doinst.sh @@ -0,0 +1,9 @@ +## This was causing problems compiling KDE for unknown reasons. +## So, we'll symlink the libraries into /opt/kde3 again... +# Add QT library directory to /etc/ld.so.conf: +if ! grep /opt/kde3/lib etc/ld.so.conf 1> /dev/null 2> /dev/null ; then + echo "/opt/kde3/lib" >> etc/ld.so.conf +fi +if [ -x /sbin/ldconfig ]; then + /sbin/ldconfig 2> /dev/null +fi diff --git a/extra/source/kde3-compat/qt3/profile.d/qt.csh b/extra/source/kde3-compat/qt3/profile.d/qt.csh new file mode 100755 index 000000000..490877c4f --- /dev/null +++ b/extra/source/kde3-compat/qt3/profile.d/qt.csh @@ -0,0 +1,22 @@ +#!/bin/csh +# Environment path variables for the Qt package: +if ( ! $?QTDIR ) then + # It's best to use the generic directory to avoid + # compiling in a version-containing path: + if ( -d /opt/kde3/lib/qt3 ) then + setenv QTDIR /opt/kde3/lib/qt3 + else + # Find the newest Qt directory and set $QTDIR to that: + foreach qtd ( /opt/kde3/lib/qt-* ) + if ( -d $qtd ) then + setenv QTDIR $qtd + endif + end + endif +endif +set path = ( $path $QTDIR/bin /opt/kde3/bin ) +if ( $?CPLUS_INCLUDE_PATH ) then + setenv CPLUS_INCLUDE_PATH $QTDIR/include:$CPLUS_INCLUDE_PATH +else + setenv CPLUS_INCLUDE_PATH $QTDIR/include +endif diff --git a/extra/source/kde3-compat/qt3/profile.d/qt.sh b/extra/source/kde3-compat/qt3/profile.d/qt.sh new file mode 100755 index 000000000..c4e23bb59 --- /dev/null +++ b/extra/source/kde3-compat/qt3/profile.d/qt.sh @@ -0,0 +1,23 @@ +#!/bin/sh +# Environment variables for the Qt package. +# +# It's best to use the generic directory to avoid +# compiling in a version-containing path: +if [ -d /opt/kde3/lib/qt3 ]; then + QTDIR=/opt/kde3/lib/qt3 +else + # Find the newest Qt directory and set $QTDIR to that: + for qtd in /opt/kde3/lib/qt-* ; do + if [ -d $qtd ]; then + QTDIR=$qtd + fi + done +fi +if [ ! "$CPLUS_INCLUDE_PATH" = "" ]; then + CPLUS_INCLUDE_PATH=$QTDIR/include:$CPLUS_INCLUDE_PATH +else + CPLUS_INCLUDE_PATH=$QTDIR/include +fi +PATH="$PATH:$QTDIR/bin:/opt/kde3/bin" +export QTDIR +export CPLUS_INCLUDE_PATH diff --git a/extra/source/kde3-compat/qt3/qt-x11.diff b/extra/source/kde3-compat/qt3/qt-x11.diff new file mode 100644 index 000000000..74453f21f --- /dev/null +++ b/extra/source/kde3-compat/qt3/qt-x11.diff @@ -0,0 +1,11 @@ +--- ./src/kernel/qgif.h.orig Tue Mar 19 02:31:42 2002 ++++ ./src/kernel/qgif.h Sun Mar 24 22:14:19 2002 +@@ -47,7 +47,7 @@ + #endif // QT_H + + #ifndef QT_BUILTIN_GIF_READER +-#define QT_BUILTIN_GIF_READER 0 ++#define QT_BUILTIN_GIF_READER 1 + #endif + + bool qt_builtin_gif_reader(); diff --git a/extra/source/kde3-compat/qt3/qt.mysql.h.diff b/extra/source/kde3-compat/qt3/qt.mysql.h.diff new file mode 100644 index 000000000..2d6fca5ac --- /dev/null +++ b/extra/source/kde3-compat/qt3/qt.mysql.h.diff @@ -0,0 +1,11 @@ +--- ./src/sql/drivers/mysql/qsql_mysql.h.orig 2002-04-15 03:05:53.000000000 -0700 ++++ ./src/sql/drivers/mysql/qsql_mysql.h 2002-10-14 14:59:36.000000000 -0700 +@@ -46,7 +46,7 @@ + #include <qt_windows.h> + #endif + +-#include <mysql.h> ++#include <mysql/mysql.h> + + #ifdef QT_PLUGIN + #define Q_EXPORT_SQLDRIVER_MYSQL diff --git a/extra/source/kde3-compat/qt3/qt.x86.cflags.diff b/extra/source/kde3-compat/qt3/qt.x86.cflags.diff new file mode 100644 index 000000000..880037c23 --- /dev/null +++ b/extra/source/kde3-compat/qt3/qt.x86.cflags.diff @@ -0,0 +1,11 @@ +--- ./mkspecs/linux-g++/qmake.conf.orig Fri Apr 26 00:48:00 2002 ++++ ./mkspecs/linux-g++/qmake.conf Tue May 7 12:05:04 2002 +@@ -18,7 +18,7 @@ + QMAKE_CFLAGS_DEPS = -M + QMAKE_CFLAGS_WARN_ON = -Wall -W + QMAKE_CFLAGS_WARN_OFF = -w +-QMAKE_CFLAGS_RELEASE = -O2 ++QMAKE_CFLAGS_RELEASE = -O2 -march=i486 -mtune=i686 + QMAKE_CFLAGS_DEBUG = -g + QMAKE_CFLAGS_SHLIB = -fPIC + QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses diff --git a/extra/source/kde3-compat/qt3/qt3.SlackBuild b/extra/source/kde3-compat/qt3/qt3.SlackBuild new file mode 100755 index 000000000..d32d283ea --- /dev/null +++ b/extra/source/kde3-compat/qt3/qt3.SlackBuild @@ -0,0 +1,192 @@ +#!/bin/sh +# Copyright 2006, 2007, 2008 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. + +# Build with NODEVEL=<something> after building the other deps to get rid of +# the .so, include, and other files not needed for runtime. + +PKGNAM=qt3 +VERSION=${VERSION:-3.3.8b} +ARCH=${ARCH:-x86_64} +NUMJOBS=${NUMJOBS:-" -j7 "} +BUILD=${BUILD:-opt2} + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-${PKGNAM} +rm -rf $PKG +mkdir -p $TMP $PKG + +# Don't build a devel package (but put a devel SYSTEM on this machine...) +NODEVEL=true + +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" +fi + +#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} +mkdir -p /opt/kde3/lib${LIBDIRSUFFIX} +cd /opt/kde3/lib${LIBDIRSUFFIX} +rm -rf qt-3* qt3 qt-3.* qt3-* +tar xvf $CWD/qt-x11-free-$VERSION.tar.bz2 || exit 1 +mv qt-x11-free-$VERSION qt3 +cd qt3 + +if [ $ARCH = "i486" ]; then + zcat $CWD/qt.x86.cflags.diff.gz | patch -p1 || exit 1 +fi + +zcat $CWD/qt-x11.diff.gz | patch -p1 || exit 1 +zcat $CWD/qt.mysql.h.diff.gz | patch -p1 || exit 1 + +# 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 {} \; + +QTDIR=/opt/kde3/lib${LIBDIRSUFFIX}/qt3 + +# 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 /opt/kde3/lib${LIBDIRSUFFIX}/qt3-${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 $NUMJOBS -i +make install || exit 1 +make $NUMJOBS -i symlinks sub-src sub-tools +make install || exit 1 +make install INSTALL_ROOT=$PKG || exit 1 +# Link the shared libraries into /opt/kde3/lib. +( cd /opt/kde3/lib${LIBDIRSUFFIX} + for file in qt3/lib/*.so* ; do + ln -sf $file . + done +) + +# Leave these out so as not to interfere with Qt4: +if [ -z "$NODEVEL" ]; then + # Add man pages: + mkdir -p $PKG/usr/man + cp -a doc/man/* $PKG/usr/man + find $PKG/usr/man -type f -exec gzip -9 "{}" \; +fi + +if [ $ARCH = "i486" ]; then + # Put this back as shipped: + ( cd $PKG/opt/kde3/lib/qt3-${VERSION} + zcat $CWD/qt.x86.cflags.diff.gz | patch -p1 -R ) +fi + +mkdir -p $PKG/etc/profile.d +cat $CWD/profile.d/qt.sh | sed -e "s#/lib#/lib${LIBDIRSUFFIX}#" \ + > $PKG/etc/profile.d/qt.sh +cat $CWD/profile.d/qt.csh | sed -e "s#/lib#/lib${LIBDIRSUFFIX}#" \ + > $PKG/etc/profile.d/qt.csh +chmod 755 $PKG/etc/profile.d/* + +# Strip binaries: +find $PKG | xargs file | grep -e "executable" -e "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... + +mkdir -p $PKG/opt/kde3/bin +( cd $PKG/opt/kde3/bin + for file in assistant designer linguist lrelease lupdate moc qm2ts qmake qtconfig uic ; do + ln -sf /opt/kde3/lib${LIBDIRSUFFIX}/qt3/bin/$file . + done +) + +sed -i -e "s#/lib\$#/lib${LIBDIRSUFFIX}#" \ + $PKG/opt/kde3/lib${LIBDIRSUFFIX}/qt3-$VERSION/lib/pkgconfig/qt-mt.pc || exit 1 +mkdir -p $PKG/opt/kde3/lib${LIBDIRSUFFIX}/pkgconfig +( cd $PKG/opt/kde3/lib${LIBDIRSUFFIX}/pkgconfig + ln -sf /opt/kde3/lib${LIBDIRSUFFIX}/qt3/lib/pkgconfig/qt-mt.pc . +) + +# Add a documentation directory: +mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION +cp -a \ + FAQ INSTALL LICENSE.GPL* LICENSE.QPL MANIFEST PLATFORMS README* changes* \ + $PKG/usr/doc/${PKGNAM}-$VERSION + +# Put the actual file tree in /opt/kde3/lib/qt3: +mv $PKG/opt/kde3/lib${LIBDIRSUFFIX}/qt3-${VERSION} $PKG/opt/kde3/lib${LIBDIRSUFFIX}/qt3 +( cd $PKG/opt/kde3/lib${LIBDIRSUFFIX} ; ln -sf qt3 qt3-${VERSION}) + +( cd $PKG/opt/kde3/lib${LIBDIRSUFFIX} + for file in qt3/lib/*.so* ; do + ln -sf $file . + done +) + +# This much documentation isn't needed for the compat qt3 package -- look in the +# source if you need it. +rm -rf $PKG/opt/kde3/lib${LIBDIRSUFFIX}/qt3/doc + +mkdir -p $PKG/install +zcat $CWD/doinst.sh.gz | sed -e "s#/lib#/lib${LIBDIRSUFFIX}#" \ + > $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/extra/source/kde3-compat/qt3/slack-desc b/extra/source/kde3-compat/qt3/slack-desc new file mode 100644 index 000000000..dc7ea57e6 --- /dev/null +++ b/extra/source/kde3-compat/qt3/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +qt3: Qt3 (a multi-platform C++ graphical user interface toolkit, version 3) +qt3: +qt3: Qt is a complete and well-developed object-oriented framework for +qt3: developing graphical user interface (GUI) applications using C++. +qt3: +qt3: This release is free only for development of free software for the X +qt3: Window System. If you use Qt for developing commercial or other +qt3: non-free software, you must have a professional license. Please see +qt3: http://www.trolltech.com/purchase.html for information on how to +qt3: obtain a professional license. +qt3: |