[Lunar-commits] <moonbase> qt4: Version bump to 4.8.0. Here are the highlights of changes;
Dennis `stumbles` Veatch
stumbles at lunar-linux.org
Wed Jan 4 14:50:16 CET 2012
commit 2612071a759b00324d36baef87273ce77995ca70
Author: Dennis `stumbles` Veatch <stumbles at lunar-linux.org>
Date: Wed Jan 4 08:50:16 2012 -0500
qt4: Version bump to 4.8.0. Here are the highlights of changes;
Removed: export QTDIR=$SOURCE_DIRECTORY, line 648 of qt-4.8.0 configure; unset QTDIR with the comment;
# QTDIR may be set and point to an old or system-wide Qt installation.
Removed: default_make || exit 1, line 654 of configure sets CFG_CONFIGURE_EXIT_ON_ERROR=yes and make will tank anyway on an error.
Removed: by ommitting --prefix and changing hardcoded paths at lines 3508, 3510 and 3521 of configure
they now point to /usr/share/qt4/Trolltech/Qt-4.8.0. Line 3503 of the configure evaluates; if [ -z "$QT_INSTALL_PREFIX" ]
which they promptly proceed to hardcode the paths. It still concerns me these point to a bin dir (though empty) but their
executables live in /usr/bin;
moc_location=/usr/share/qt4/Trolltech/Qt-4.8.0/bin/moc
uic_location=/usr/share/qt4/Trolltech/Qt-4.8.0/bin/uic
rcc_location=/usr/share/qt4/Trolltech/Qt-4.8.0/bin/rcc
lupdate_location=/usr/share/qt4/Trolltech/Qt-4.8.0/bin/lupdate
lrelease_location=/usr/share/qt4/Trolltech/Qt-4.8.0/bin/lrelease_location
If I have the gist correct, the Trolltech dir is used for sandboxing and we don't do any of that... I think.
In any case I have not found a dependent module that cares so for now I will leave it at that. So this ugly mess
gets deleted;
for i in `ls /usr/lib/$MODULE/pkgconfig/Q*.pc` ; do sed -i "s:\${prefix}/src/qt-everywhere-opensource-src-$VERSION/:\${prefix}/:" $i ; done &&
if [ -f /usr/lib/$MODULE/pkgconfig/phonon.pc ]; then
sed -i "s:\${prefix}/src/qt-everywhere-opensource-src-$VERSION/:\${prefix}/:" /usr/lib/$MODULE/pkgconfig/phonon.pc
fi &&
find /usr/lib/qt4 -type f -name '*.prl' \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \; &&
Removed: #mquery MAKE_QDOC3 "BUILD QDOC3 docs? ${PROBLEM_COLOR}Needed by qt-creator${DEFAULT_COLOR}" n
Checked qt install without the mquery, qdoc3 binary is installed.
Removed: now taken care of by gcc-base.conf and the various gmake.conf files.
# "Qt compiled without support for -fvisibility=hidden. This will break
# plugins and linking of some applications. Please fix your Qt installation."
CFLAGS+=" -fvisibility=hidden $CFLAGS" &&
If you find pinentry failing it is most likely due to having cairo compiled with qt4. Redo cairo and say no, it is the
reason I added "Experimental" to cairo's qt4 optional_depends.
The docs/demos and the ilk have been consolidated in CONFIGURE. Its just way to messey at sorting out the 3 W's.
Lastly; you still need to do the qt4/phonon verses kde/phonon module dance, still they are not compatible. So if you want
amarok which depends on qtscriptgenerator say yes to qt4 phonon compile qtscriptgenerator then recompile qt4 without it's phonon.
---
qt4-apps/qt4/BUILD | 179 +++++++++++++++++++++++++-----------------------
qt4-apps/qt4/CONFIGURE | 9 +--
qt4-apps/qt4/DEPENDS | 4 +-
qt4-apps/qt4/DETAILS | 6 +-
4 files changed, 102 insertions(+), 96 deletions(-)
diff --git a/qt4-apps/qt4/BUILD b/qt4-apps/qt4/BUILD
index 7b6dbfa..4e8435f 100644
--- a/qt4-apps/qt4/BUILD
+++ b/qt4-apps/qt4/BUILD
@@ -1,109 +1,116 @@
(
-# To silence the phonon module from barking about this;
-# "Qt compiled without support for -fvisibility=hidden. This will break
-# plugins and linking of some applications. Please fix your Qt installation."
- CFLAGS+=" -fvisibility=hidden $CFLAGS" &&
+# By ommitting the --prefix switch from the configure and performing this sedit we can remove
+# the group of sedit to repoint moc, uic and rcc locations to /usr/bin.
+ sedit "s:/usr/local/Trolltech/:$MODULE_PREFIX/share/$MODULE/Trolltech/:g" configure &&
- if [ -d /opt/lunar/qt ] ; then
+# Needed so it can find some of the source libs during make.
+ export LD_LIBRARY_PATH=$SOURCE_DIRECTORY/lib:${LD_LIBRARY_PATH} &&
+
+ if [[ -d /opt/lunar/qt ]] ; then
ld_remove /opt/lunar/qt/lib
fi &&
- if [ -d /usr/lib/qt4 ] ; then
- ld_remove /usr/lib/qt4
+ if [[ -d /usr/lib/$MODULE ]] ; then
+ ld_remove /usr/lib/$MODULE
fi &&
- export QTDIR=$SOURCE_DIRECTORY &&
- export PATH=$MODULE_PREFIX::$PATH &&
- export LD_LIBRARY_PATH=$QTDIR/lib &&
-
- if [ $LICENSE_TYPE == "y" ] ; then
+ if [[ $LICENSE_TYPE == "y" ]] ; then
LICENSE_TYPE="-opensource"
- else
+ else
LICENSE_TYPE="-commercial"
fi &&
- sedit "s/-O2/$CFLAGS/" mkspecs/common/g++.conf &&
-
- if [ "$MAKE_DOCS" == "y" ]; then
- OPTS+=" -make tools -make docs -make translations"
- fi &&
-
- if [ "$MAKE_EXAMPLE_DEMOS" == "y" ]; then
- OPTS+=" -make examples -make demos -make tools -make docs -make translations"
- fi &&
-
- OPTS+=" -largefile -multimedia -audio-backend -no-separate-debug-info -script -release -scripttools -accessibility -glib -optimized-qmake -fast -shared" &&
-
- if [ -f /usr/lib/libOpenVG.so ];then
- OPTS+=" -openvg"
- fi &&
-
- ./configure -confirm-license $LICENSE_TYPE \
- -prefix /usr \
- -libdir /usr/lib/$MODULE \
- -docdir /usr/share/$MODULE \
- -plugindir /usr/lib/$MODULE/plugins \
- -headerdir /usr/include/$MODULE \
- -datadir /usr/share/$MODULE \
- -translationdir /usr/share/$MODULE \
- -sysconfdir /etc/$MODULE \
- -examplesdir /usr/share/doc/$MODULE \
- -demosdir /usr/share/doc/$MODULE \
- -importdir /usr/share/doc/$MODULE \
- $OPTS &&
-
- default_make || exit 1
-
-# It wants to point moc_location and uic_location to ${prefix}/src/qt-everywhere-opensource-src-4.7.0-beta2/bin
-# and after much fiddling cannot get it to point them to /usr/bin. So lets just sedit these rascals.
- for i in `ls /usr/lib/$MODULE/pkgconfig/Q*.pc` ; do sed -i "s:\${prefix}/src/qt-everywhere-opensource-src-$VERSION/:\${prefix}/:" $i ; done &&
- if [ -f /usr/lib/$MODULE/pkgconfig/phonon.pc ]; then
- sed -i "s:\${prefix}/src/qt-everywhere-opensource-src-$VERSION/:\${prefix}/:" /usr/lib/$MODULE/pkgconfig/phonon.pc
- fi &&
-# Like for moc and uic, the same needs doing for the *.prl files.
- find /usr/lib/qt4 -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \; &&
-
- if [ "MAKE_ASSIST" == "y" ] ; then
- cd tools/assistant &&
- qmake -o Makefile assistant.pro &&
- make &&
- install -m 755
- cd $SOURCE_DIRECTORY
- fi &&
+ sedit "s/-O2/$CFLAGS/" mkspecs/common/gcc-base.conf &&
+ sedit "s:-Wl,-rpath,::" mkspecs/common/gcc-base-unix.conf &&
+ sed -i "/^QMAKE_LFLAGS\s/s|+=|+= ${LDFLAGS}|g" mkspecs/common/gcc-base.conf &&
+
+ OPTS+=" -scripttools -no-declarative-debug" &&
+
+ ./configure -confirm-license "${LICENSE_TYPE}" \
+ -bindir "${MODULE_PREFIX}/bin" \
+ -libdir "${MODULE_PREFIX}/lib/$MODULE" \
+ -docdir "${MODULE_PREFIX}/share/$MODULE" \
+ -headerdir "${MODULE_PREFIX}/include/$MODULE" \
+ -plugindir "${MODULE_PREFIX}/lib/$MODULE/plugins" \
+ -importdir "${MODULE_PREFIX}/share/doc/$MODULE" \
+ -datadir "${MODULE_PREFIX}/share/$MODULE" \
+ -translationdir "${MODULE_PREFIX}/share/$MODULE" \
+ -sysconfdir "/etc/xdg" \
+ -examplesdir "${MODULE_PREFIX}/share/doc/$MODULE" \
+ -demosdir "${MODULE_PREFIX}/share/doc/$MODULE" \
+ $OPTS &&
+
+ default_make &&
+
+ if [[ "$MAKE_EXAMPLE_DEMOS" == "y" ]] ; then
+ cat > ${MODULE}-designer.desktop << EOF &&
+[Desktop Entry]
+Type=Application
+Name=Qt4 Designer
+Comment=Design GUIs for Qt4 applications
+Exec=${MODULE_PREFIX}/bin/designer
+Icon=${MODULE_PREFIX}/share/doc/qt4/widgets/icons/images/designer.png
+Categories=Qt;Development;
+Terminal=false
+EOF
+ install -D -m644 ${MODULE}-designer.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-designer.desktop
- if [ "$MAKE_QDOC3" == "y" ]; then
- cd tools/qdoc3 &&
- qmake -o Makefile qdoc3.pro &&
- make &&
- install -m 755 ../../bin/qdoc3 $MODULE_PREFIX/bin/ &&
- cd $SOURCE_DIRECTORY
- fi &&
+ cat > ${MODULE}-assistant.desktop << EOF &&
+[Desktop Entry]
+Type=Application
+Name=Qt4 Assistant
+Comment=Shows Qt4 documentation and examples
+Exec=${MODULE_PREFIX}/bin/assistant
+Icon=${MODULE_PREFIX}/share/qt4/src/images/assistant-assistant.png
+Categories=Qt;Development;Documentation;
+Terminal=false
+EOF
+ install -D -m644 ${MODULE}-assistant.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-assistant.desktop
-
- # Desktop menu entry for Qt Designer
- if [ "$MAKE_EXAMPLE_DEMOS" == "y" ]; then
+ cat > ${MODULE}-qtdemo.desktop << EOF &&
+[Desktop Entry]
+Name=Qt4 Demo
+Comment=Show Qt4 demos and programming examples
+Exec=${MODULE_PREFIX}/bin/qtdemo
+Icon=${MODULE_PREFIX}/share/$MODULE/src/images/qt-logo.png
+Terminal=false
+Type=Application
+Categories=Qt;Development;
+EOF
+ install -D -m644 ${MODULE}-qtdemo.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-qtdemo.desktop
+fi &&
- cat > ${MODULE}-designer.desktop << EOF &&
+ cat > ${MODULE}-qtconfig.desktop << EOF &&
[Desktop Entry]
+Name=Qt4 Config
+Comment=Configure Qt4 behavior, styles, fonts
+Exec=${MODULE_PREFIX}/bin/qtconfig
+Icon=${MODULE_PREFIX}/share/$MODULE/src/images/qt-logo.png
+Terminal=false
Type=Application
-Name=Qt4 Designer
-Comment=Qt4 Designer is Qt's tool for designing and building graphical user interfaces
-Exec=/usr/bin/designer
-Icon=/usr/share/doc/qt4/widgets/icons/images/designer.png
-Categories=Application;Qt;KDE;Development;
+Categories=Qt;Settings;
EOF
+ install -D -m644 ${MODULE}-qtconfig.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-qtconfig.desktop &&
- install -D -m644 ${MODULE}-designer.desktop /usr/share/applications/${MODULE}-designer.desktop
- fi &&
-##
+ cat > ${MODULE}-linguist.desktop << EOF &&
+[Desktop Entry]
+Name=Qt4 Linquist
+Comment=Add translations to Qt4 applications
+Exec=${MODULE_PREFIX}/bin/linguist
+Icon=${MODULE_PREFIX}/share/$MODULE/src/images/linguist-linguist.png
+Terminal=false
+Type=Application
+Categories=Qt;Settings;
+EOF
+ install -D -m644 ${MODULE}-linguist.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-linguist.desktop &&
- echo export QTDIR=\"/usr\" > $SOURCE_DIRECTORY/qt4.rc &&
- echo export PATH=\"'${PATH}':'${QTDIR}'/bin\" >> $SOURCE_DIRECTORY/qt4.rc &&
- echo export XDG_DATA_DIRS=\"'${XDG_DATA_DIRS:-/usr/share}':/usr/share/qt4\" >> $SOURCE_DIRECTORY/qt4.rc &&
- echo export PKG_CONFIG_PATH=\"'${PKG_CONFIG_PATH}':/usr/lib/qt4/pkgconfig\" >> $SOURCE_DIRECTORY/qt4.rc &&
+ echo "export QTDIR=\"${MODULE_PREFIX}\"" > $SOURCE_DIRECTORY/$MODULE.rc &&
+ echo export PATH=\"'${QTDIR}'/bin:'${PATH}'\" >> $SOURCE_DIRECTORY/$MODULE.rc &&
+ echo export QT_PLUGIN_PATH=\"'${QTDIR}'/lib/${MODULE}/plugins\" >> $SOURCE_DIRECTORY/$MODULE.rc &&
+ echo export XDG_DATA_DIRS=\"'${XDG_DATA_DIRS:-/usr/share}':/usr/share/$MODULE\" >> $SOURCE_DIRECTORY/$MODULE.rc &&
+ echo export PKG_CONFIG_PATH=\"'${QTDIR}'/lib/${MODULE}/pkgconfig:'${PKG_CONFIG_PATH}'\" >> $SOURCE_DIRECTORY/$MODULE.rc &&
- install -m644 $SOURCE_DIRECTORY/qt4.rc /etc/profile.d/
+ install -m644 $SOURCE_DIRECTORY/$MODULE.rc /etc/profile.d/
) > $C_FIFO 2>&1
diff --git a/qt4-apps/qt4/CONFIGURE b/qt4-apps/qt4/CONFIGURE
index 2389542..84af3c8 100644
--- a/qt4-apps/qt4/CONFIGURE
+++ b/qt4-apps/qt4/CONFIGURE
@@ -1,8 +1,5 @@
-mquery MAKE_DOCS "Build the QT4 documentation?" n "" "-nomake docs"
-mquery MAKE_EXAMPLE_DEMOS "Build examples and demos?" n "" "-nomake examples -nomake demos"
-mquery XML_PATTERNS "Build xml patterns? ${PROBLEM_COLOR}Needed by qtscriptgenerator${DEFAULT_COLOR}" y "-exceptions -xmlpatterns" "-no-exceptions -no-xmlpatterns"
-mquery MAKE_QDOC3 "BUILD QDOC3 docs? ${PROBLEM_COLOR}Needed by qt-creator${DEFAULT_COLOR}" n
-mquery MAKE_WEBKIT "Build the webkit plugin? ${PROBLEM_COLOR}Needed by kdelibs4 / mythtv ${DEFAULT_COLOR}" y "-webkit" "-no-webkit"
+mquery MAKE_EXAMPLE_DEMOS "Build examples. docs and demos?${PROBLEM_COLOR} (Needed by Qt Assistant and Designer${DEFAULT_COLOR}" n "" "-nomake docs -nomake examples -nomake demos"
+mquery XML_PATTERNS "Build xml patterns? ${PROBLEM_COLOR}Needed by qtscriptgenerator${DEFAULT_COLOR}" y "-xmlpatterns" "-no-exceptions -no-xmlpatterns"
+mquery MAKE_WEBKIT "Build the webkit plugin? ${PROBLEM_COLOR}Needed by phonon / kdelibs4 / mythtv ${DEFAULT_COLOR}" y "-webkit" "-no-webkit"
mquery LICENSE_TYPE "Build Qt using open-source license? (n=commercial)" y
mquery MAKE_PHONON "Build qt4's (old) phonon? ${PROBLEM_COLOR}say n if you will build and use KDE${DEFAULT_COLOR}" n "-phonon" "-no-phonon"
-mquery MAKE_ASSIST "Build the Qt Assistant? (Needed by tulip)" y
diff --git a/qt4-apps/qt4/DEPENDS b/qt4-apps/qt4/DEPENDS
index cbca3cc..5a0ddad 100644
--- a/qt4-apps/qt4/DEPENDS
+++ b/qt4-apps/qt4/DEPENDS
@@ -1,11 +1,13 @@
depends %X
+optional_depends "dbus" "-dbus" "-no-dbus" "for QtDBus module support"
optional_depends "%JPEG" "-system-libjpeg" "-qt-libjpeg" "Use system or qt provided jpeg"
optional_depends "openssl" "-openssl" "-no-openssl" "for Secure Sockets support"
optional_depends "libmng" "-system-libmng" "-qt-libmng" "Use system or Qt version of MNG"
optional_depends "libpng" "-system-libpng" "-qt-libpng" "Use system or Qt verion of PNG"
+optional_depends "tiff" "-system-libtiff" "-qt-libtiff" "for tiff graphics support; yes=system"
optional_depends "zlib" "-system-zlib" "-qt-zlib" "Choose system or Qt version of zlib"
-optional_depends "giflib" "-qt-gif" "-no-gif" "for GIF reading support"
+optional_depends "giflib" "" "-no-gif" "for GIF reading support"
optional_depends "fontconfig" "-fontconfig" "-no-fontconfig" "for anti alias font support"
optional_depends "cups" "-cups" "-no-cups" "for printing support, needed by kdelibs"
optional_depends "nas" "-system-nas-sound" "-no-nas-sound" "for Network Audio System support"
diff --git a/qt4-apps/qt4/DETAILS b/qt4-apps/qt4/DETAILS
index 889d18d..1943ccc 100644
--- a/qt4-apps/qt4/DETAILS
+++ b/qt4-apps/qt4/DETAILS
@@ -1,15 +1,15 @@
MODULE=qt4
- VERSION=4.7.4
+ VERSION=4.8.0
SOURCE=qt-everywhere-opensource-src-${VERSION}.tar.gz
SOURCE_URL[0]=http://get.qt.nokia.com/qt/source
SOURCE_URL[1]=ftp://ftp.trolltech.com/qt/source
SOURCE_URL[2]=http://gd.tuwien.ac.at/hci/qt/source
SOURCE_DIRECTORY=$BUILD_DIRECTORY/qt-everywhere-opensource-src-${VERSION}
- SOURCE_VFY=sha1:af9016aa924a577f7b06ffd28c9773b56d74c939
+ SOURCE_VFY=sha1:2ba35adca8fb9c66a58eca61a15b21df6213f22e
MODULE_PREFIX=${QT4_PREFIX:-/usr}
WEB_SITE=http://www.trolltech.com/qt
ENTERED=20020420
- UPDATED=20110904
+ UPDATED=20120104
MAINTAINER=florin at lunar-linux.org
SHORT="A C++ toolkit for application development"
More information about the Lunar-commits
mailing list