mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
97b389bcdb
There is no possible implementation of QChar.unicode() returning a int&. Replace with unicodep() returning int*. The allows athe code to compile. To be determined if the reference access ever work on ARM as it cannot make the unaligned access.
132 lines
5.3 KiB
Bash
132 lines
5.3 KiB
Bash
# $Id: PKGBUILD 149356 2012-02-07 05:40:02Z eric $
|
|
# Maintainer: Eric Bélanger <eric@archlinux.org>
|
|
|
|
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
# - added arm.patch to fix compiling on ARM with GCC >= 4
|
|
# Source: http://lists.trolltech.com/qt-embedded-interest/2007-03/msg00003.html
|
|
|
|
pkgname=qt3
|
|
pkgver=3.3.8b
|
|
pkgrel=2
|
|
epoch=1
|
|
pkgdesc="The QT3 gui toolkit"
|
|
arch=('i686' 'x86_64')
|
|
url="http://www.trolltech.com/products/qt/index.html"
|
|
license=('GPL')
|
|
depends=('libpng' 'libxmu' 'libxcursor' 'libxinerama' 'libxft'
|
|
'libxrandr' 'libmng')
|
|
makedepends=('mysql' 'postgresql' 'unixodbc' 'sqlite3' 'mesa')
|
|
optdepends=('libmysqlclient' 'postgresql-libs' 'unixodbc')
|
|
options=('!libtool')
|
|
install=qt.install
|
|
source=(ftp://ftp.trolltech.com/qt/source/qt-x11-free-${pkgver}.tar.gz
|
|
qt.profile qt3-png15.patch qt-copy-kde-patches.tar.bz2 qt-patches.tar.bz2
|
|
eastern_asian_languagues.diff qt-odbc.patch gcc-4.6.patch arm.patch)
|
|
sha1sums=('745def6250dc7f337dbb265e20bf38dcb41fd854'
|
|
'd2e257a9011208b2cb81b9cf47915b9a2f9dab83'
|
|
'3d19510c46016a1a211d97bf8f82b01498b1b33c'
|
|
'33418e5b117458af23c72cdbffc0c339bc34bdc4'
|
|
'116afa0e737bdf27ea27f9b3653aeb56db9ec151'
|
|
'40c7b8f06a21f809ddeb8b5560e9da63ccac6a17'
|
|
'1346320614f6f86fbeb10b9fbad721dea29f5b61'
|
|
'd9b83b8f6f9c8bd98d290dc1d0e9913a00b62c3f'
|
|
'f77e1bcd27205ab58a9025db9ddfd0da73979782')
|
|
|
|
# qt-copy-kde-patches come from http://websvn.kde.org/trunk/qt-copy/patches/
|
|
# other qt-patches come from fedora and gentoo
|
|
|
|
build() {
|
|
unset QMAKESPEC
|
|
export QTDIR="${srcdir}"/qt-x11-free-${pkgver}
|
|
export PATH=${QTDIR}/bin:${PATH}
|
|
export LD_LIBRARY_PATH=${QTDIR}/lib:${LD_LIBRARY_PATH}
|
|
export QMAKESPEC=$QTDIR/mkspecs/linux-g++
|
|
cd "${srcdir}"/qt-x11-free-${pkgver}
|
|
# apply qt patches from kde.org
|
|
for i in ../qt-copy-kde-patches/*; do
|
|
patch -p0 -i $i
|
|
done
|
|
# apply other qt patches and one security fix from debian/gentoo
|
|
for i in ../qt-patches/*; do
|
|
patch -p1 -i $i
|
|
done
|
|
# fix CJK font/chars select error (FS#11245)
|
|
patch -p1 -i "${srcdir}"/eastern_asian_languagues.diff
|
|
# fix build problem against new unixODBC
|
|
patch -p1 -i "${srcdir}"/qt-odbc.patch
|
|
# fix build with gcc 4.6.0
|
|
patch -p1 -i "${srcdir}"/gcc-4.6.patch
|
|
|
|
patch -p0 -i "${srcdir}"/qt3-png15.patch
|
|
# Arch Linux ARM patch
|
|
patch -p1 -i ${srcdir}/arm.patch
|
|
|
|
# start compiling qt
|
|
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
|
|
sed -i "s|read acceptance|acceptance=yes|" configure
|
|
|
|
# remove unwanted mkspecs
|
|
rm -rf mkspecs/{*aix*,*bsd*,cygwin*,dgux*,darwin*,hpux*,hurd*,irix*,lynxos*,macx*,qnx*,reliant*,sco*,solaris*,tru64*,unixware*,win32*}
|
|
|
|
if [ "$CARCH" = "x86_64" ]; then
|
|
export ARCH="-64"
|
|
else unset ARCH
|
|
fi
|
|
|
|
./configure -prefix /opt/qt \
|
|
-platform linux-g++$ARCH \
|
|
-system-zlib \
|
|
-qt-gif \
|
|
-release \
|
|
-shared \
|
|
-sm \
|
|
-nis \
|
|
-thread \
|
|
-stl \
|
|
-system-lib{png,jpeg,mng} \
|
|
-no-g++-exceptions \
|
|
-plugin-sql-{mysql,psql,sqlite,odbc}
|
|
|
|
# fix /opt/qt/lib path
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt-x11-free-${pkgver}/src/Makefile
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt-x11-free-${pkgver}/tools/designer/designer/Makefile
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt-x11-free-${pkgver}/tools/designer/editor/Makefile
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt-x11-free-${pkgver}/tools/assistant/lib/Makefile
|
|
[ "$CARCH" = "x86_64" ] && sed -i "s|/opt/qt/lib64|/opt/qt/lib|g" "${srcdir}"/qt-x11-free-${pkgver}/tools/designer/uilib/Makefile
|
|
|
|
cd "${srcdir}"/qt-x11-free-${pkgver}
|
|
make -C qmake
|
|
cd "${srcdir}"/qt-x11-free-${pkgver}/plugins/src/sqldrivers/mysql
|
|
"${srcdir}"/qt-x11-free-${pkgver}/bin/qmake -o Makefile "INCPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/mysql -lmysqlclient" mysql.pro
|
|
cd "${srcdir}"/qt-x11-free-${pkgver}/plugins/src/sqldrivers/psql
|
|
"${srcdir}"/qt-x11-free-${pkgver}/bin/qmake -o Makefile "INCPATH+=/usr/src/include /usr/include/postgresql/server" "LIBS+=-L/usr/lib -lpq" psql.pro
|
|
|
|
cd "${srcdir}"/qt-x11-free-${pkgver}
|
|
# fix the broken makefiles
|
|
#sed -i 's|[[:space:]]*strip.*doc/html.*$|#|g' src/Makefile
|
|
make
|
|
}
|
|
|
|
package() {
|
|
cd "${srcdir}"/qt-x11-free-${pkgver}
|
|
make INSTALL_ROOT="${pkgdir}" install
|
|
rm -rf "${pkgdir}"/opt/qt/{phrasebooks,templates,translations}
|
|
sed -i "s|-L${srcdir}/qt-x11-free-${pkgver}/lib ||g" "${pkgdir}"/opt/qt/lib/*.prl
|
|
install -D -m755 qmake/qmake "${pkgdir}"/opt/qt/bin/qmake
|
|
install -D -m755 "${srcdir}"/qt.profile "${pkgdir}"/etc/profile.d/qt3.sh
|
|
ln -sf /opt/qt/bin/qtconfig "${pkgdir}"/opt/qt/bin/qt3config
|
|
rm -f "${pkgdir}"/opt/qt/mkspecs/linux-g++$ARCH/linux-g++$ARCH
|
|
|
|
# install man pages
|
|
install -d -m755 "${pkgdir}"/opt/qt/man
|
|
cp -r "${srcdir}"/qt-x11-free-${pkgver}/doc/man/{man1,man3} "${pkgdir}"/opt/qt/man/
|
|
|
|
install -d -m755 "${pkgdir}"/etc/ld.so.conf.d/
|
|
echo '/opt/qt/lib' > "${pkgdir}"/etc/ld.so.conf.d/qt3.conf
|
|
}
|