[Lunar-commits] <moonbase-other> qt5: Adding to zbeta for now. Compiles with all optional depends. At the moment

Dennis Veatch dennisveatch at bellsouth.net
Mon Aug 25 23:40:19 CEST 2014


commit c1c39a93aaa68ba7a3cb3d2d01f2979caa97efd5
Author: Dennis Veatch <dennisveatch at bellsouth.net>
Date: Mon, 25 Aug 2014 17:36:42 -0400
URL: https://github.com/lunar-linux/moonbase-other/commit/c1c39a93aaa68ba7a3cb3d2d01f2979caa97efd5

qt5: Adding to zbeta for now. Compiles with all optional depends. At the moment

it does conflict with some of qt4. Here are the conflicts;

Conflicting file(s) for modules qt4, qt5:
 /usr/bin/qdbuscpp2xml
 /usr/bin/xmlpatternsvalidator
 /usr/bin/qdbusviewer
 /usr/bin/qdbus
 /usr/bin/lrelease
 /usr/bin/xmlpatterns
 /usr/bin/lupdate
 /usr/bin/qmake
 /usr/bin/uic
 /usr/bin/lconvert
 /usr/bin/qdbusxml2cpp
 /usr/bin/moc
 /usr/bin/rcc

While there some of kde that will compile with this there are still many of its dependencies,
optional or hard that have yet to catch up that depend on qt.
---
  zbeta/qt5/BUILD     | +107/-0   
  zbeta/qt5/CONFIGURE | +5/-0     
  zbeta/qt5/DEPENDS   | +34/-0    
  zbeta/qt5/DETAILS   | +24/-0    
  4 files changed, 170 insertions(+)

--- /dev/null
+++ b/zbeta/qt5/BUILD
@@ -0,0 +1,107 @@
+
+  if [[ $LICENSE_TYPE == "y" ]] ; then
+    LICENSE_TYPE="-opensource"
+     else
+    LICENSE_TYPE="-commercial"
+  fi &&
+
+  sedit "s/-O2/$CFLAGS/" qtbase/mkspecs/common/gcc-base.conf &&
+  sed -i "/^QMAKE_LFLAGS\s/s|+=|+= ${LDFLAGS}|g" qtbase/mkspecs/common/gcc-base.conf &&
+
+#  Cannot find our /usr/bin/ls
+  sedit "s:/bin/ls:/usr/bin/ls:g" qtbase/src/corelib/global/global.pri &&
+
+# Making accessibility a hard option, disabling this will break QStyle and may break other internal parts of Qt and
+# create a source incompatible version which is unsupported. Why bother making it a switch if that is the case.
+# Using no-gtkstyle, enabled currently tanks the make.
+  OPTS+=" -release -c++11 -accessibility -gui -no-gtkstyle" &&
+
+  ./configure  -confirm-license "${LICENSE_TYPE}"                            \
+               -prefix "${MODULE_PREFIX}"                                    \
+               -sysconfdir "/etc/xdg"                                        \
+               -bindir "${MODULE_PREFIX}/bin"                                \
+               -libdir "${MODULE_PREFIX}/lib/$MODULE"                        \
+               -archdatadir "${MODULE_PREFIX}/lib/$MODULE"                   \
+               -headerdir "${MODULE_PREFIX}/include/$MODULE"                 \
+               -datadir "${MODULE_PREFIX}/share/$MODULE"                     \
+               -docdir "${MODULE_PREFIX}/share/doc/$MODULE"                  \
+               -examplesdir "${MODULE_PREFIX}/share/doc/$MODULE"/examples    \
+               -translationdir "${MODULE_PREFIX}/share/$MODULE"/translations \
+               $OPTS                                                         &&
+
+  default_make &&
+
+  install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png /usr/share/pixmaps/assistant-qt5.png &&
+  install -v -Dm644 qttools/src/designer/src/designer/images/designer.png /usr/share/pixmaps/designer-qt5.png  &&
+  install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png /usr/share/pixmaps/linguist-qt5.png  &&
+  install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png /usr/share/pixmaps/qdbusviewer-qt5.png &&
+ 
+# It wants to point moc_location and uic_location to ${prefix}/src/qt-everywhere-opensource-src-5.3.1/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/Qt5*.pc` ; do sed -i "s:/usr/src/qt-everywhere-opensource-src-$VERSION:/usr:" $i ; done &&
+# Like for moc and uic, the same needs doing for the *.prl files.
+  find /usr/lib/ -type f -name '*Qt5*.prl' -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \; &&
+  find /usr/lib/$MODULE -type f -name '*.prl' -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \; &&
+
+# Remove references to the build directory from installed files 
+  sed -e "s:$PWD/qtbase:/usr/lib/qt5:g" -i /usr/lib/qt5/mkspecs/modules/qt_lib_bootstrap_private.pri &&
+  find /usr/lib/lib{qgsttools_p,Qt5*}.prl -exec sed -i -r '/^QMAKE_PRL_BUILD_DIR/d;s/(QMAKE_PRL_LIBS =).*/\1/' {} \; &&
+  find /usr/lib/$MODULE/lib{qgsttools_p,Qt5*}.prl -exec sed -i -r '/^QMAKE_PRL_BUILD_DIR/d;s/(QMAKE_PRL_LIBS =).*/\1/' {} \; &&
+
+
+  cat > ${MODULE}-designer.desktop << EOF  &&
+[Desktop Entry]
+Type=Application
+Name=Qt5 Designer
+Comment=Design GUIs for Qt5 applications
+Exec=${MODULE_PREFIX}/bin/designer
+Icon=${MODULE_PREFIX}/share/pixmaps/designer-qt5.png
+Categories=Qt;Development;
+Terminal=false
+EOF
+  install -D -m644 ${MODULE}-designer.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-designer.desktop 
+
+  cat > ${MODULE}-assistant.desktop << EOF  &&
+[Desktop Entry]
+Type=Application
+Name=Qt5 Assistant
+Comment=Shows Qt5 documentation and examples
+Exec=${MODULE_PREFIX}/bin/assistant
+Icon=${MODULE_PREFIX}/share/pixmaps/assistant-qt5.png
+Categories=Qt;Development;Documentation;
+Terminal=false
+EOF
+  install -D -m644 ${MODULE}-assistant.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-assistant.desktop
+
+  cat > ${MODULE}-qtconfig.desktop << EOF  &&
+[Desktop Entry]
+Name=Qt5 QDbusViewer 
+GenericName=D-Bus Debugger
+Comment=Debug D-Bus applications
+Exec=${MODULE_PREFIX}/bin/qdbusviewer
+Icon=${MODULE_PREFIX}/share/pixmaps/qdbusviewer-qt5.png
+Terminal=false
+Encoding=UTF-8
+Type=Application
+Categories=Qt;Development;Debugger;
+EOF
+  install -D -m644 ${MODULE}-qtconfig.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-qtconfig.desktop &&
+
+  cat > ${MODULE}-linguist.desktop << EOF  &&
+[Desktop Entry]
+Name=Qt5 Linquist
+Comment=Add translations to Qt5 applications
+Exec=${MODULE_PREFIX}/bin/linguist
+Icon=${MODULE_PREFIX}/share/pixmaps/linguist-qt5.png
+Terminal=false
+Type=Application
+Categories=Qt;Settings;
+EOF
+  install -D -m644 ${MODULE}-linguist.desktop ${MODULE_PREFIX}/share/applications/${MODULE}-linguist.desktop &&
+
+  echo "export QT5DIR=\"${MODULE_PREFIX}\"" > $SOURCE_DIRECTORY/$MODULE.rc &&
+  echo export QT5_PLUGIN_PATH=\"'${QT5DIR}'/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=\"'${QT5DIR}'/lib/pkgconfig:'${PKG_CONFIG_PATH}'\" >> $SOURCE_DIRECTORY/$MODULE.rc &&
+
+  install -m644 $SOURCE_DIRECTORY/$MODULE.rc /etc/profile.d/
--- /dev/null
+++ b/zbeta/qt5/CONFIGURE
@@ -0,0 +1,5 @@
+mquery BUILD_EXAMPLES "Build examples? ${PROBLEM_COLOR}Saying yes will only install the examples source, they are not compiled.${QUERY_COLOR}" n "-make examples -no-compile-examples" "-nomake examples"
+mquery LICENSE_TYPE "Build Qt using open-source license? (n=commercial)" y
+mquery SYS_PROXY "Use system network proxies by default?" n "-system-proxies" "-no-system-proxies"
+mquery USE_JOURNALD "Send logging output to journald?" n "-journald" "-no-journald"
+mquery QML_DEBUG "Build the QML debugging support?" n "-qml-debug" "-no-qml-debug"
--- /dev/null
+++ b/zbeta/qt5/DEPENDS
@@ -0,0 +1,34 @@
+depends %X
+depends xinput
+depends xcb-proto
+depends xcb-util
+depends xcb-util-image
+depends xcb-util-keysyms
+depends xcb-util-wm
+depends xf86-input-evdev
+depends fontconfig
+
+optional_depends  "%BLUEZ"     ""                   ""               "For bluetooth support"
+optional_depends  "giflib"     ""                   "-no-gif"        "For GIF reading support"
+optional_depends  "libmng"     ""                   ""               "For mng graphics support"
+optional_depends  "mtdev"      "-mtdev"             "-no-mtdev"      "For Multitouch Protocol support"
+optional_depends  "freetype2"  "-system-freetype"   "-qt-freetype"   "Use system provided freetype, else use qt provided freetype"
+optional_depends  "harfbuzz"   "-system-harfbuzz"   "-qt-harfbuzz"   "Use system provided harfbuzz for text shaping, else use qt provided harfbuzz"
+optional_depends  "dbus"       "-dbus"              "-no-dbus"       "For QtDBus module support"
+optional_depends  "%JPEG"      "-system-libjpeg"    "-qt-libjpeg"    "Use system provided jpeg, else use qt provided jpeg"
+optional_depends  "openssl"    "-openssl"           "-no-openssl"    "For Secure Sockets support"
+optional_depends  "libpng"     "-system-libpng"     "-qt-libpng"     "Use system provided png, else use qt provided png"
+optional_depends  "zlib"       "-system-zlib"       "-qt-zlib"       "Choose system or Qt version of zlib"
+optional_depends  "pulseaudio" "-pulseaudio"        "-no-pulseaudio" "For pulseaudio support"
+optional_depends  "cups"       "-cups"              "-no-cups"       "For printing support, needed by kdelibs"
+optional_depends  "icu4c"      "-icu"               "-no-icu"        "For International Components for Unicode supoort,${PROBLEM_COLOR} required for QtWebKit ${DEFAULT_COLOR}"
+optional_depends  "ruby"       ""                   ""               "Required for QtWebKit"
+optional_depends  "alsa-lib"   "-alsa"              "-no-alsa"       "For alsa audio support"
+optional_depends  "%MYSQL"     "-plugin-sql-mysql"  "-no-sql-mysql"  "For mysql database support"
+optional_depends  "postgresql" "-plugin-sql-psql"   "-no-sql-psql"   "For postgresql database support"
+optional_depends  "unixODBC"   "-plugin-sql-odbc"   "-no-sql-odbc"   "For unixODBC support"
+optional_depends  "freetds"    "-plugin-sql-tds"    "-no-sql-tds"    "For tabular data stream support"
+optional_depends  "sqlite"     "-plugin-sql-sqlite" "-no-sql-sqlite" "For sqlite database support"
+
+optional_depends  "gst-plugins-base-1.0" "" "" "For QtWebKit HTML5 Video Support"
+optional_depends  "ca-certificates"      "" "" "For security certificate support"
--- /dev/null
+++ b/zbeta/qt5/DETAILS
@@ -0,0 +1,24 @@
+          MODULE=qt5
+         VERSION=5.3.1
+          SOURCE=qt-everywhere-opensource-src-$VERSION.tar.gz
+      SOURCE_URL=http://download.qt-project.org/official_releases/qt/${VERSION%.*}/$VERSION/single
+SOURCE_DIRECTORY=$BUILD_DIRECTORY/qt-everywhere-opensource-src-$VERSION
+      SOURCE_VFY=sha1:3244dd34f5fb695e903eaa49c6bd0838b9bf7a73
+   MODULE_PREFIX=${QT5_PREFIX:-/usr}
+        WEB_SITE=http://www.trolltech.com/qt
+         ENTERED=20140822
+         UPDATED=20140426
+           SHORT="A C++ toolkit for application development"
+
+cat << EOF
+Qt is a C++ toolkit for application development. It lets application
+developers target all major operating systems with a single application
+source code.
+
+Qt provides a platform-independent API to all central platform
+functionality: GUI, database access, networking, file handling, etc. The
+Qt library encapsulates the different APIs of different operating systems,
+providing the application programmer with a single, common API for all
+operating systems. The native C APIs are encapsulated in a set of
+well-designed, fully object-oriented C++ classes.
+EOF




More information about the Lunar-commits mailing list