[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