[GIT] 01/01: fix build of qt5 style config

Harald Sitter apachelogger-guest at moszumanska.debian.org
Tue Dec 9 14:00:40 UTC 2014


This is an automated email from the git hooks/post-receive script.

apachelogger-guest pushed a commit to branch kubuntu_unstable
in repository qtcurve.

commit ab0ae426db22b327eb8f45df0fc18fa9af8daabb
Author: Harald Sitter <sitter at kde.org>
Date:   Tue Dec 9 14:59:25 2014 +0100

    fix build of qt5 style config
    
    - qt4 and 5 can not build at the same time because former will override
      paths of latter which are needed to install important data assets!
    - split the builds... one run we build qt5 the other qt4+gtk2+things
    - qt4 is installed ontop of qt5 because gtk2 has weird variable linkage to
      things only defined when building qt4/kde4
    - force QTC_KDE4_PREFIX to "" on the qt5 build as it not being set would
      make cmake explicitly find_package(KDE4) even when told not to build qt4
    
    Upstream fixed their install to set +x on map_kde_icons.pl so drop our
    workaround for that.
---
 debian/kde-style-qtcurve5.install |  1 +
 debian/rules                      | 42 ++++++++++++++++++++++++++++++++++++---
 2 files changed, 40 insertions(+), 3 deletions(-)

diff --git a/debian/kde-style-qtcurve5.install b/debian/kde-style-qtcurve5.install
index b501d0a..c641455 100644
--- a/debian/kde-style-qtcurve5.install
+++ b/debian/kde-style-qtcurve5.install
@@ -1 +1,2 @@
 usr/lib/*/qt5
+usr/share/kstyle/themes/qtcurve.themerc
diff --git a/debian/rules b/debian/rules
index a555049..40e7edf 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,14 +3,50 @@
 
 include /usr/share/pkg-kde-tools/qt-kde-team/3/debian-qt-kde.mk
 
+# Split build into qt5 and qt4+gtk+otherthings.
+# KDE5 and KF5 can not be used at the same time as they would override the same
+# variables making the result paths somewhat non-deterministic.
+# Short of repairing the CMake structure to enable for building things at the
+# same time we do two builds.
+# First we build the qt5 component only, then build the qt4 version which
+# for the time being operates as our base level of compatibility.
+# Subsequently we install qt5 and qt4 on top of it. The reason for this is
+# that there is also a very concerning mixing of variables going on with
+# the kde4/qt4 plugin. For example QTC_KDE4_PREFIX will ultimately be injected
+# into the GTK2 style for configuratino lookup and the likes. So in order to
+# preserve compatibility there we consider qt4 the base rather than qt5 as
+# the qt5 version has no such integration into the GTK2 plugin (none that
+# one could find anyway).
+#                                                      - Harald Sitter, Dec 2014
+
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+QT4_BUILD_DIR = "obj-$(DEB_HOST_MULTIARCH)-qt4"
+
+override_dh_auto_clean:
+	$(overridden_command)
+	rm -rf $(QT5_BUILD_DIR)
+
 override_dh_auto_configure:
 	$(overridden_command) -- \
-		-DCMAKE_INSTALL_PREFIX=/usr \
 		-DENABLE_QT5=on \
+		-DQTC_QT5_ENABLE_KDE=on \
+		-DENABLE_QT4=off \
+			-DQTC_KDE4_PREFIX="" \
+			-DQTC_QT4_STYLE_SUPPORT=off \
+		-DENABLE_GTK2=off \
+		-DENABLE_TEST=off \
+		-DQTC_INSTALL_PO=off
+	$(overridden_command) --builddirectory=$(QT4_BUILD_DIR) -- \
+		-DENABLE_QT5=off \
+		-DQTC_QT5_ENABLE_KDE=off \
 		-DENABLE_QT4=on \
 			-DQT_QMAKE_EXECUTABLE=/usr/bin/qmake-qt4 \
 			-DQTC_QT4_ENABLE_KWIN=off
 
-override_dh_fixperms:
-	chmod +x debian/kde-style-qtcurve4/usr/share/themes/QtCurve/gtk-2.0/map_kde_icons.pl
+override_dh_auto_build:
+	$(overridden_command)
+	$(overridden_command) --builddirectory=$(QT4_BUILD_DIR)
+
+override_dh_auto_install:
 	$(overridden_command)
+	$(overridden_command) --builddirectory=$(QT4_BUILD_DIR)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-kde/kde-extras/qtcurve.git



More information about the pkg-kde-commits mailing list