You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
211 lines
8.1 KiB
211 lines
8.1 KiB
# Maintainer: Pawel 'l0ner' Soltys <pwslts@gmail.com>
|
|
# Contributor: Calvin Morrison <MutantTurkey@gmail.com>
|
|
|
|
pkgname=trinity-qt3
|
|
pkgver=3.8.8.d
|
|
pkgrel=5
|
|
pkgdesc="The Qt3 gui toolkit - with Trinity upstream"
|
|
arch=('i686' 'x86_64')
|
|
url="http://trinitydesktop.org"
|
|
license=('GPL')
|
|
groups=('trinity-base')
|
|
depends=('libpng' 'libjpeg' 'libxmu' 'libxcursor' 'libxinerama' 'mesa'
|
|
'libxft' 'libxrandr')
|
|
makedepends=('mysql' 'postgresql' 'sqlite3' 'unixodbc' 'libmng' 'libxi')
|
|
# cups [add for cups support, add -cups to ./configure opts]
|
|
optdepends=('libmysqlclient' 'postgresql-libs' 'unixodbc')
|
|
provides=('qt3' 'qt3-enhanced')
|
|
replaces=('qt3-enhanced' 'qt3')
|
|
options=('libtool' '!emptydirs')
|
|
install='qt3.install'
|
|
source=('http://mirror.ets.kth.se/trinity/releases/3.5.13/dependencies/qt3-3.3.8.d.tar.gz'
|
|
'qt-patches.tar.bz2')
|
|
md5sums=('78dc675e84aed595375449818cbb589a'
|
|
'a4b569f217d17cb1231c18aa48ecae20')
|
|
|
|
_prefix="/opt/qt3"
|
|
|
|
build() {
|
|
msg "Patching source code..."
|
|
|
|
cd $srcdir/qt3
|
|
|
|
# apply other qt patches from debian/gentoo
|
|
msg "- Applying patch: 0015-qiconview-finditem.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0015-qiconview-finditem.patch
|
|
msg "- Applying patch: 0017-qiconview-ctrl_rubber.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0017-qiconview-ctrl_rubber.patch
|
|
msg "- Applying patch: 0020-designer-deletetabs.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0020-designer-deletetabs.patch
|
|
msg "- Applying patch: 0035-qvaluelist-streaming-operator.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0035-qvaluelist-streaming-operator.patch
|
|
msg "- Applying patch: 0036-qprogressbar-optimization.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0036-qprogressbar-optimization.patch
|
|
msg "- Applying patch: 0046-qiconview-no-useless-scrollbar.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0046-qiconview-no-useless-scrollbar.patch
|
|
msg "- Applying patch: 0049-qiconview-rubber_on_move.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0049-qiconview-rubber_on_move.patch
|
|
msg "- Applying patch: 0078-argb-visual-hack.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0078-argb-visual-hack.patch
|
|
msg "- Applying patch: 0088-fix-xinput-clash.patch"
|
|
patch -Np0 -i $srcdir/qt-patches/0088-fix-xinput-clash.patch
|
|
msg "- Applying patch: gcc46-arch.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/gcc46-arch.patch
|
|
msg "- Applying patch: qt-3.1.0-makefile.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-3.1.0-makefile.patch
|
|
msg "- Applying patch: qt-3.3.4-print-CJK.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-3.3.4-print-CJK.patch
|
|
msg "- Applying patch: qt-3.3.8-buffered-iconview.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-3.3.8-buffered-iconview.patch
|
|
msg "- Applying patch: qt-3.3.8.d-libpng15-1.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-3.3.8.d-libpng15-1.patch
|
|
msg "- Applying patch: qt-3.3.8-eyecandy.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-3.3.8-eyecandy.patch
|
|
msg "- Applying patch: qt-3.3.8-odbc.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-3.3.8-odbc.patch
|
|
msg "- Applying patch: qt-no-rpath.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-no-rpath.patch
|
|
msg "- Applying patch: qt-visibility.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-visibility.patch
|
|
msg "- Applying patch: qt-x11-free-3.3.4-gcc4-buildkey.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-x11-free-3.3.4-gcc4-buildkey.patch
|
|
msg "- Applying patch: qt-x11-free-3.3.4-gcc4.patch"
|
|
patch -Np1 -i $srcdir/qt-patches/qt-x11-free-3.3.4-gcc4.patch
|
|
|
|
# change occurrences of $QTDIR into $QT3DIR
|
|
# anything. Qt4 compatibility?
|
|
# not needed since, qt4 don't use $QTDIR
|
|
#find ${srcdir}/qt3 -type f -exec \
|
|
# sed -i 's/QTDIR/QT3DIR/g' {} +
|
|
|
|
msg "Setting enviroment variables..."
|
|
export QTDIR="${srcdir}/qt3/"
|
|
export PATH=${QTDIR}/bin:${PATH}
|
|
export LD_LIBRARY_PATH=${QTDIR}/lib:${LD_LIBRARY_PATH}
|
|
export QMAKESPEC=$QTDIR/mkspecs/linux-g++
|
|
|
|
if [ "$CARCH" = "x86_64" ]; then
|
|
export ARCH="-64"
|
|
else unset ARCH
|
|
fi
|
|
|
|
cd "${srcdir}/qt3"
|
|
|
|
rm -rf mkspecs/{*aix*,*bsd*,cygwin*,dgux*,darwin*,hpux*,hurd*,irix*,lynxos*,macx*,qnx*,reliant*,sco*,solaris*,tru64*,unixware*,win32*}
|
|
|
|
sed -i 's|-cp -P -f|-cp -L -f|' qmake/Makefile.unix
|
|
rm -rf doc/html examples tutorial
|
|
sed -i "s|sub-tutorial sub-examples||" Makefile
|
|
sed -i "s|-O2|$CXXFLAGS|" mkspecs/linux-g++/qmake.conf
|
|
sed -i "s|-O2|$CXXFLAGS|" mkspecs/linux-g++-32/qmake.conf
|
|
sed -i "s|-O2|$CXXFLAGS|" mkspecs/linux-g++-64/qmake.conf
|
|
sed -i "s|-I. |$CXXFLAGS -I. |" qmake/Makefile.unix
|
|
|
|
# auto license acceptance
|
|
sed -i "s|read acceptance|acceptance=yes|" configure
|
|
|
|
msg "Starting configure..."
|
|
#make -C qmake || return 1
|
|
./configure \
|
|
-prefix ${_prefix} \
|
|
-platform linux-g++${ARCH} \
|
|
-sysconfdir /etc/qt \
|
|
-release \
|
|
-sm \
|
|
-nis \
|
|
-stl \
|
|
-no-g++-exceptions \
|
|
-thread \
|
|
-shared \
|
|
-dlopen-opengl \
|
|
-no-ipv6 \
|
|
-system-zlib \
|
|
-{system-lib,plugin-imgfmt-}{png,jpeg,mng} \
|
|
-qt-gif \
|
|
-xinerama \
|
|
-xcursor \
|
|
-xrender \
|
|
-xft \
|
|
-plugin-sql-{mysql,psql,sqlite,odbc}
|
|
|
|
# 64bit fixes pulled from extras/qt3 PKGBUILD
|
|
# fix /opt/qt/lib path
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt3/src/Makefile
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt3/tools/designer/designer/Makefile
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt3/tools/designer/editor/Makefile
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt3/tools/assistant/lib/Makefile
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt3/tools/designer/uilib/Makefile
|
|
|
|
msg "Building - $pkgname..."
|
|
|
|
# build sql plugins
|
|
cd "${srcdir}"/qt3
|
|
make -C qmake
|
|
cd "${srcdir}"/qt3/plugins/src/sqldrivers/mysql
|
|
"${srcdir}"/qt3/bin/qmake -o Makefile "INCPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/mysql -lmysqlclient" mysql.pro
|
|
cd "${srcdir}"/qt3/plugins/src/sqldrivers/psql
|
|
"${srcdir}"/qt3/bin/qmake -o Makefile "INCPATH+=/usr/src/include /usr/include/postgresql/server" "LIBS+=-L/usr/lib -lpq" psql.pro
|
|
|
|
cd "${srcdir}"/qt3
|
|
|
|
# fix the broken makefiles
|
|
# sed -i 's|[[:space:]]*strip.*doc/html.*$|#|g' src/Makefile
|
|
|
|
# build rest
|
|
make
|
|
|
|
}
|
|
|
|
package() {
|
|
msg "Packaging - $pkgname-$pkgver"
|
|
cd "$srcdir/qt3"
|
|
|
|
make INSTALL_ROOT="$pkgdir" install
|
|
|
|
msg "Cleaning package..."
|
|
|
|
rm -rf "${pkgdir}"$_prefix/{phrasebooks,templates,translations}
|
|
sed -i "s|-L${srcdir}/qt3/lib ||g" "${pkgdir}"$_prefix/lib/*.prl
|
|
rm -f "${pkgdir}"${_prefix}/mkspecs/linux-g++$ARCH/linux-g++$ARCH
|
|
|
|
# Fix issues with GCC4
|
|
sed -i 's/\(char\*\)/const char*/g' $pkgdir$_prefix/include/*.h
|
|
# Fix the mess we did fixing issues with GCC4
|
|
sed -i 's/const u char/const uchar/g' $pkgdir$_prefix/include/*.h
|
|
sed -i 's/u const char/const uchar/g' $pkgdir$_prefix/include/*.h
|
|
sed -i 's/const const/const/g' $pkgdir$_prefix/include/*.h
|
|
sed -i 's/uconst/ unsigned /g' $pkgdir$_prefix/include/*.h
|
|
|
|
sed -ie 's/define QTIMER_H/&\n#include "qglobal.h"/g' $pkgdir$_prefix/include/qtimer.h
|
|
|
|
install -D -m755 qmake/qmake "${pkgdir}"$_prefix/bin/qmake
|
|
|
|
# Build ld.so.conf file
|
|
install -d -m755 ${pkgdir}/etc/ld.so.conf.d/
|
|
echo "${_prefix}/lib" >> ${pkgdir}/etc/ld.so.conf.d/qt3.conf
|
|
|
|
# Build and install qt.profile
|
|
install -d -m755 ${pkgdir}/etc/profile.d/
|
|
echo "export QTDIR=${_prefix}" > ${pkgdir}/etc/profile.d/qt3.sh
|
|
echo "export QT_XFT=true" >> ${pkgdir}/etc/profile.d/qt3.sh
|
|
echo "export PATH+=:${_prefix}/bin" >> ${pkgdir}/etc/profile.d/qt3.sh
|
|
echo "export PKG_CONFIG_PATH+=:${_prefix}/pkgconfig" >> ${pkgdir}/etc/profile.d/qt3.sh
|
|
|
|
# ln -sf $_prefix/bin/qtconfig "${pkgdir}"$_prefix/bin/qt3config
|
|
|
|
# install man pages
|
|
install -d -m755 "${pkgdir}"$_prefix/man
|
|
cp -r "${srcdir}"/qt3/doc/man/{man1,man3} "${pkgdir}"$_prefix/man/
|
|
|
|
# libtoolslay
|
|
find $startdir/pkg -name '*.la' -exec rm {} \;
|
|
|
|
# Arch64 fix
|
|
#if [ "$CARCH" = "x86_64" ]; then
|
|
# [ -d $pkgdir$_prefix/mkspecs/linux-g++ ] || mkdir $pkgdir$_prefix/mkspecs/linux-g++
|
|
# cd $pkgdir$_prefix/mkspecs/linux-g++
|
|
# ln -s -v ../linux-g++-64/* .
|
|
#fi
|
|
|
|
}
|