Source: qt4-x11 Severity: wishlist Tags: patch Dear Maintainer,
The Qt5 is coming out in the near future, with release candidate already out. It will contain some additional binaries that would clash with Debian's Qt4 in its current shape, unless more binaries get the -qt4 suffix and alternatives treatment. Attached git patch addresses the issue to the extent I'm currently aware. It has been tested on the Ubuntu side in the following PPA, where Qt5 RC1 and Qt4 are currently co-installable: https://launchpad.net/~canonical-qt5-edgers/+archive/qt5-proper After the version put in there I tested a full build against Debian's version and added qmlviewer(-qt4) to the binaries being handled. -Timo -- System Information: Debian Release: 7.0 APT prefers unstable APT policy: (500, 'unstable') Architecture: i386 (i686) Kernel: Linux 3.2.0-4-686-pae (SMP w/1 CPU core) Locale: LANG=fi_FI.UTF-8, LC_CTYPE=fi_FI.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash
>From 40d973de572a1c52cbe65e1b700cdade189dbc81 Mon Sep 17 00:00:00 2001 From: Timo Jyrinki <timo.jyri...@iki.fi> Date: Thu, 13 Dec 2012 09:20:26 +0200 Subject: [PATCH] * debian/patches/01_debian_append_qt4_suffix2.diff: - Prepare for Qt5 co-installability --- debian/changelog | 6 +- debian/libqt4-dev-bin.install | 6 +- debian/libqt4-dev-bin.postinst | 15 ++ debian/patches/01_debian_append_qt4_suffix2.diff | 255 ++++++++++++++++++++++ debian/patches/series | 1 + debian/qt4-dev-tools.install | 22 +- debian/qt4-dev-tools.postinst | 55 +++++ debian/qt4-qmlviewer.install | 2 +- debian/qt4-qmlviewer.postinst | 10 + 9 files changed, 356 insertions(+), 16 deletions(-) create mode 100644 debian/patches/01_debian_append_qt4_suffix2.diff create mode 100644 debian/qt4-qmlviewer.postinst diff --git a/debian/changelog b/debian/changelog index 861c402..20e1fae 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,7 +11,11 @@ qt4-x11 (4:4.8.2+dfsg-5) UNRELEASED; urgency=low installed, also on rebuilt packages. This arrangement is transitional. (Closes: #669278). - -- Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Sat, 08 Dec 2012 14:26:18 -0300 + [ Timo Jyrinki ] + * debian/patches/01_debian_append_qt4_suffix2.diff: + - Prepare for Qt5 co-installability + + -- Timo Jyrinki <t...@debian.org> Thu, 13 Dec 2012 09:04:23 +0200 qt4-x11 (4:4.8.2+dfsg-4) unstable; urgency=medium diff --git a/debian/libqt4-dev-bin.install b/debian/libqt4-dev-bin.install index 5502220..602e231 100644 --- a/debian/libqt4-dev-bin.install +++ b/debian/libqt4-dev-bin.install @@ -1,7 +1,7 @@ usr/bin/moc-qt4 -usr/bin/qdbuscpp2xml -usr/bin/qdbusxml2cpp +usr/bin/qdbuscpp2xml-qt4 +usr/bin/qdbusxml2cpp-qt4 usr/bin/qt3to4 -usr/bin/rcc +usr/bin/rcc-qt4 usr/bin/uic-qt4 usr/bin/uic3 diff --git a/debian/libqt4-dev-bin.postinst b/debian/libqt4-dev-bin.postinst index 9e3c347..9213b96 100644 --- a/debian/libqt4-dev-bin.postinst +++ b/debian/libqt4-dev-bin.postinst @@ -12,4 +12,19 @@ update-alternatives --install \ --slave /usr/share/man/man1/uic.1.gz uic.1.gz \ "/usr/share/man/man1/uic-qt4.1.gz" +update-alternatives --install \ + /usr/bin/rcc rcc "/usr/bin/rcc-qt4" "40" \ + --slave /usr/share/man/man1/rcc.1.gz rcc.1.gz \ + "/usr/share/man/man1/rcc-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qdbusxml2cpp qdbusxml2cpp "/usr/bin/qdbusxml2cpp-qt4" "40" \ + --slave /usr/share/man/man1/qdbusxml2cpp.1.gz qdbusxml2cpp.1.gz \ + "/usr/share/man/man1/qdbusxml2cpp-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qdbuscpp2xml qdbuscpp2xml "/usr/bin/qdbuscpp2xml-qt4" "40" \ + --slave /usr/share/man/man1/qdbuscpp2xml.1.gz qdbuscpp2xml.1.gz \ + "/usr/share/man/man1/qdbuscpp2xml-qt4.1.gz" + #DEBHELPER# diff --git a/debian/patches/01_debian_append_qt4_suffix2.diff b/debian/patches/01_debian_append_qt4_suffix2.diff new file mode 100644 index 0000000..fbaa39e --- /dev/null +++ b/debian/patches/01_debian_append_qt4_suffix2.diff @@ -0,0 +1,255 @@ +Author: Timo Jyrinki <t...@debian.org> +Description: Append a -qt4 suffix to some more tools. + To allow co-installation of the development tools of Qt5 with the Qt4 ones, + we append a -qt4 suffix to the executable names of some additional + development tools that did not need the suffix with Qt3 vs Qt4. +Last-Update: 2012-12-03 +Forwarded: not-needed + +=== modified file 'mkspecs/features/dbusadaptors.prf' +--- a/mkspecs/features/dbusadaptors.prf 2011-03-03 20:58:36 +0000 ++++ b/mkspecs/features/dbusadaptors.prf 2012-12-03 10:59:00 +0000 +@@ -1,4 +1,4 @@ +-qtPrepareTool(QMAKE_QDBUSXML2CPP, qdbusxml2cpp) ++qtPrepareTool(QMAKE_QDBUSXML2CPP, qdbusxml2cpp-qt4) + + for(DBUS_ADAPTOR, $$list($$unique(DBUS_ADAPTORS))) { + + +=== modified file 'mkspecs/features/dbusinterfaces.prf' +--- a/mkspecs/features/dbusinterfaces.prf 2011-03-03 20:58:36 +0000 ++++ b/mkspecs/features/dbusinterfaces.prf 2012-12-03 10:59:07 +0000 +@@ -1,6 +1,6 @@ + load(moc) + +-qtPrepareTool(QMAKE_QDBUSXML2CPP, qdbusxml2cpp) ++qtPrepareTool(QMAKE_QDBUSXML2CPP, qdbusxml2cpp-qt4) + + for(DBUS_INTERFACE, $$list($$unique(DBUS_INTERFACES))) { + + +=== modified file 'mkspecs/features/resources.prf' +--- a/mkspecs/features/resources.prf 2011-03-03 20:58:36 +0000 ++++ b/mkspecs/features/resources.prf 2012-12-03 10:58:38 +0000 +@@ -1,5 +1,5 @@ + defined(qtPrepareTool)|load(qt_functions) ### Qt 5: see default_pre.prf +-qtPrepareTool(QMAKE_RCC, rcc) ++qtPrepareTool(QMAKE_RCC, rcc-qt4) + + isEmpty(RCC_DIR):RCC_DIR = . + isEmpty(QMAKE_RESOURCE_PREFIX):QMAKE_RESOURCE_PREFIX = /tmp/ + +=== modified file 'src/tools/rcc/rcc.pro' +--- a/src/tools/rcc/rcc.pro 2009-04-29 09:17:18 +0000 ++++ b/src/tools/rcc/rcc.pro 2012-12-03 11:00:10 +0000 +@@ -1,5 +1,5 @@ + TEMPLATE = app +-TARGET = rcc ++TARGET = rcc-qt4 + + DESTDIR = ../../../bin + DEFINES += QT_RCC + +=== modified file 'tools/assistant/tools/qcollectiongenerator/qcollectiongenerator.pro' +--- a/tools/assistant/tools/qcollectiongenerator/qcollectiongenerator.pro 2010-05-19 11:03:10 +0000 ++++ b/tools/assistant/tools/qcollectiongenerator/qcollectiongenerator.pro 2012-12-03 11:18:30 +0000 +@@ -2,7 +2,7 @@ + network + TEMPLATE = app + DESTDIR = ../../../../bin +-TARGET = qcollectiongenerator ++TARGET = qcollectiongenerator-qt4 + CONFIG += qt \ + warn_on \ + help \ + +=== modified file 'tools/assistant/tools/qhelpconverter/qhelpconverter.pro' +--- a/tools/assistant/tools/qhelpconverter/qhelpconverter.pro 2009-04-29 09:17:18 +0000 ++++ b/tools/assistant/tools/qhelpconverter/qhelpconverter.pro 2012-12-03 11:19:06 +0000 +@@ -1,5 +1,5 @@ + QT += xml + TEMPLATE = app +-TARGET = qhelpconverter ++TARGET = qhelpconverter-qt4 + DESTDIR = ../../../../bin + CONFIG += qt warn_on help + +=== modified file 'tools/assistant/tools/qhelpgenerator/qhelpgenerator.pro' +--- a/tools/assistant/tools/qhelpgenerator/qhelpgenerator.pro 2009-04-29 09:17:18 +0000 ++++ b/tools/assistant/tools/qhelpgenerator/qhelpgenerator.pro 2012-12-03 11:18:58 +0000 +@@ -1,5 +1,5 @@ + TEMPLATE = app +-TARGET = qhelpgenerator ++TARGET = qhelpgenerator-qt4 + DESTDIR = ../../../../bin + CONFIG += qt warn_on help console + CONFIG -= app_bundle + +=== modified file 'tools/linguist/lconvert/lconvert.pro' +--- a/tools/linguist/lconvert/lconvert.pro 2009-04-29 09:17:18 +0000 ++++ b/tools/linguist/lconvert/lconvert.pro 2012-12-03 11:02:31 +0000 +@@ -1,6 +1,6 @@ + + TEMPLATE = app +-TARGET = lconvert ++TARGET = lconvert-qt4 + DESTDIR = ../../../bin + + QT -= gui + +=== modified file 'tools/pixeltool/pixeltool.pro' +--- a/tools/pixeltool/pixeltool.pro 2008-05-06 12:39:31 +0000 ++++ b/tools/pixeltool/pixeltool.pro 2012-12-03 11:17:33 +0000 +@@ -11,7 +11,7 @@ + + DEPENDPATH += . + INCLUDEPATH += . +-TARGET = pixeltool ++TARGET = pixeltool-qt4 + + mac { + QMAKE_INFO_PLIST=Info_mac.plist + +=== modified file 'tools/qdbus/qdbuscpp2xml/qdbuscpp2xml.pro' +--- a/tools/qdbus/qdbuscpp2xml/qdbuscpp2xml.pro 2008-05-06 12:39:31 +0000 ++++ b/tools/qdbus/qdbuscpp2xml/qdbuscpp2xml.pro 2012-12-03 11:04:08 +0000 +@@ -1,6 +1,6 @@ + SOURCES = qdbuscpp2xml.cpp + DESTDIR = ../../../bin +-TARGET = qdbuscpp2xml ++TARGET = qdbuscpp2xml-qt4 + QT = core xml + CONFIG += qdbus + CONFIG -= app_bundle + +=== modified file 'tools/qdbus/qdbusviewer/qdbusviewer.pro' +--- a/tools/qdbus/qdbusviewer/qdbusviewer.pro 2008-05-06 12:39:31 +0000 ++++ b/tools/qdbus/qdbusviewer/qdbusviewer.pro 2012-12-03 11:04:30 +0000 +@@ -1,5 +1,5 @@ + TEMPLATE = app +-TARGET = qdbusviewer ++TARGET = qdbusviewer-qt4 + + HEADERS = qdbusviewer.h \ + qdbusmodel.h \ + +=== modified file 'tools/qdbus/qdbusxml2cpp/qdbusxml2cpp.pro' +--- a/tools/qdbus/qdbusxml2cpp/qdbusxml2cpp.pro 2008-05-06 12:39:31 +0000 ++++ b/tools/qdbus/qdbusxml2cpp/qdbusxml2cpp.pro 2012-12-03 11:04:16 +0000 +@@ -1,6 +1,6 @@ + SOURCES = qdbusxml2cpp.cpp + DESTDIR = ../../../bin +-TARGET = qdbusxml2cpp ++TARGET = qdbusxml2cpp-qt4 + QT = core xml + CONFIG += qdbus + CONFIG -= app_bundle + +=== modified file 'tools/qmlplugindump/qmlplugindump.pro' +--- a/tools/qmlplugindump/qmlplugindump.pro 2011-12-22 17:50:13 +0000 ++++ b/tools/qmlplugindump/qmlplugindump.pro 2012-12-03 11:19:23 +0000 +@@ -4,7 +4,7 @@ + + QT += declarative + +-TARGET = qmlplugindump ++TARGET = qmlplugindump-qt4 + + SOURCES += \ + main.cpp \ + +=== modified file 'tools/qttracereplay/qttracereplay.pro' +--- a/tools/qttracereplay/qttracereplay.pro 2009-12-05 18:26:57 +0000 ++++ b/tools/qttracereplay/qttracereplay.pro 2012-12-03 11:19:36 +0000 +@@ -4,7 +4,7 @@ + + DEPENDPATH += . + INCLUDEPATH += . ../../src/3rdparty/harfbuzz/src +-TARGET = qttracereplay ++TARGET = qttracereplay-qt4 + + # Input + SOURCES += main.cpp + +=== modified file 'tools/qvfb/qvfb.pro' +--- a/tools/qvfb/qvfb.pro 2012-09-12 11:32:36 +0000 ++++ b/tools/qvfb/qvfb.pro 2012-12-03 11:19:51 +0000 +@@ -1,6 +1,6 @@ + TEMPLATE = app + CONFIG += qt warn_on uic +-TARGET = qvfb ++TARGET = qvfb-qt4 + DESTDIR = ../../bin + + !win32:!embedded:!mac:CONFIG += x11 + +=== modified file 'tools/xmlpatterns/xmlpatterns.pro' +--- a/tools/xmlpatterns/xmlpatterns.pro 2010-01-19 13:26:43 +0000 ++++ b/tools/xmlpatterns/xmlpatterns.pro 2012-12-03 11:03:17 +0000 +@@ -1,5 +1,5 @@ + TEMPLATE = app +-TARGET = xmlpatterns ++TARGET = xmlpatterns-qt4 + DESTDIR = ../../bin + QT -= gui + QT += xmlpatterns + +=== modified file 'tools/xmlpatternsvalidator/xmlpatternsvalidator.pro' +--- a/tools/xmlpatternsvalidator/xmlpatternsvalidator.pro 2009-11-17 12:12:36 +0000 ++++ b/tools/xmlpatternsvalidator/xmlpatternsvalidator.pro 2012-12-03 11:03:25 +0000 +@@ -1,5 +1,5 @@ + TEMPLATE = app +-TARGET = xmlpatternsvalidator ++TARGET = xmlpatternsvalidator-qt4 + DESTDIR = ../../bin + QT -= gui + QT += xmlpatterns + +=== modified file 'configure' +--- a/configure 2012-12-03 14:24:38.772024018 +0000 ++++ b/configure 2012-12-03 14:41:47.332014659 +0000 +@@ -8706,8 +8706,8 @@ + QMAKE_MOC = \$\$QT_BUILD_TREE/bin/moc-qt4 + QMAKE_UIC = \$\$QT_BUILD_TREE/bin/uic-qt4 + QMAKE_UIC3 = \$\$QT_BUILD_TREE/bin/uic3 +-QMAKE_RCC = \$\$QT_BUILD_TREE/bin/rcc +-QMAKE_QDBUSXML2CPP = \$\$QT_BUILD_TREE/bin/qdbusxml2cpp ++QMAKE_RCC = \$\$QT_BUILD_TREE/bin/rcc-qt4 ++QMAKE_QDBUSXML2CPP = \$\$QT_BUILD_TREE/bin/qdbusxml2cpp-qt4 + QMAKE_INCDIR_QT = \$\$QT_BUILD_TREE/include + QMAKE_LIBDIR_QT = \$\$QT_BUILD_TREE/lib + +=== modified file 'translations/translations.pro' +--- a/translations/translations.pro 2012-12-03 16:47:45.987944860 +0000 ++++ b/translations/translations.pro 2012-12-03 16:48:12.307937536 +0000 +@@ -1,7 +1,7 @@ + TRANSLATIONS = $$files(*.ts) + + qtPrepareTool(LRELEASE, lrelease-qt4) +-qtPrepareTool(LCONVERT, lconvert) ++qtPrepareTool(LCONVERT, lconvert-qt4) + qtPrepareTool(LUPDATE, lupdate-qt4) + LUPDATE += -locations relative -no-ui-lines + +=== modified file 'doc/doc.pri' +--- a/doc/doc.pri 2012-12-03 16:52:21.339942483 +0000 ++++ b/doc/doc.pri 2012-12-03 16:51:24.879943766 +0000 +@@ -3,7 +3,7 @@ + ##################################################################### + + DOCS_GENERATION_DEFINES = +-GENERATOR = $$QT_BUILD_TREE/bin/qhelpgenerator ++GENERATOR = $$QT_BUILD_TREE/bin/qhelpgenerator-qt4 + + win32:!win32-g++* { + unixstyle = false + +--- a/tools/qml/qml.pro 2012-04-26 22:45:50.000000000 +0300 ++++ b/tools/qml/qml.pro 2012-12-13 09:52:17.833174643 +0200 +@@ -50,5 +50,5 @@ + TARGET=QMLViewer + ICON=qml.icns + } else { +- TARGET=qmlviewer ++ TARGET=qmlviewer-qt4 + } diff --git a/debian/patches/series b/debian/patches/series index f259b96..ed130e8 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -17,6 +17,7 @@ make_rules_for_redirect_stricter.patch qtdebug_syslog.patch buildable_appchooser_states_demos.patch 01_debian_append_qt4_suffix.diff +01_debian_append_qt4_suffix2.diff 02_syncqt_sane_timestamp_for_nonexisting_headers.diff 07_trust_dpkg-arch_over_uname-m.diff 08_configure_quilt_compat.diff diff --git a/debian/qt4-dev-tools.install b/debian/qt4-dev-tools.install index 11a896f..7c7ce31 100644 --- a/debian/qt4-dev-tools.install +++ b/debian/qt4-dev-tools.install @@ -1,17 +1,17 @@ usr/bin/assistant-qt4 -usr/bin/lconvert +usr/bin/lconvert-qt4 usr/bin/linguist-qt4 -usr/bin/pixeltool -usr/bin/qcollectiongenerator -usr/bin/qdbusviewer +usr/bin/pixeltool-qt4 +usr/bin/qcollectiongenerator-qt4 +usr/bin/qdbusviewer-qt4 usr/bin/qdoc3 -usr/bin/qhelpconverter -usr/bin/qhelpgenerator -usr/bin/qmlplugindump -usr/bin/qttracereplay -usr/bin/qvfb -usr/bin/xmlpatterns -usr/bin/xmlpatternsvalidator +usr/bin/qhelpconverter-qt4 +usr/bin/qhelpgenerator-qt4 +usr/bin/qmlplugindump-qt4 +usr/bin/qttracereplay-qt4 +usr/bin/qvfb-qt4 +usr/bin/xmlpatterns-qt4 +usr/bin/xmlpatternsvalidator-qt4 usr/share/qt4/phrasebooks/* usr/share/qt4/translations/assistant_cs.qm usr/share/qt4/translations/assistant_da.qm diff --git a/debian/qt4-dev-tools.postinst b/debian/qt4-dev-tools.postinst index a984ad6..40871ce 100644 --- a/debian/qt4-dev-tools.postinst +++ b/debian/qt4-dev-tools.postinst @@ -12,4 +12,59 @@ update-alternatives --install \ --slave /usr/share/man/man1/linguist.1.gz linguist.1.gz \ "/usr/share/man/man1/linguist-qt4.1.gz" +update-alternatives --install \ + /usr/bin/lconvert lconvert "/usr/bin/lconvert-qt4" "40" \ + --slave /usr/share/man/man1/lconvert.1.gz lconvert.1.gz \ + "/usr/share/man/man1/lconvert-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/pixeltool pixeltool "/usr/bin/pixeltool-qt4" "40" \ + --slave /usr/share/man/man1/pixeltool.1.gz pixeltool.1.gz \ + "/usr/share/man/man1/pixeltool-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qcollectiongenerator qcollectiongenerator "/usr/bin/qcollectiongenerator-qt4" "40" \ + --slave /usr/share/man/man1/qcollectiongenerator.1.gz qcollectiongenerator.1.gz \ + "/usr/share/man/man1/qcollectiongenerator-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qdbusviewer qdbusviewer "/usr/bin/qdbusviewer-qt4" "40" \ + --slave /usr/share/man/man1/qdbusviewer.1.gz qdbusviewer.1.gz \ + "/usr/share/man/man1/qdbusviewer-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qhelpconverter qhelpconverter "/usr/bin/qhelpconverter-qt4" "40" \ + --slave /usr/share/man/man1/qhelpconverter.1.gz qhelpconverter.1.gz \ + "/usr/share/man/man1/qhelpconverter-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qhelpgenerator qhelpgenerator "/usr/bin/qhelpgenerator-qt4" "40" \ + --slave /usr/share/man/man1/qhelpgenerator.1.gz qhelpgenerator.1.gz \ + "/usr/share/man/man1/qhelpgenerator-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qmlplugindump qmlplugindump "/usr/bin/qmlplugindump-qt4" "40" \ + --slave /usr/share/man/man1/qmlplugindump.1.gz qmlplugindump.1.gz \ + "/usr/share/man/man1/qmlplugindump-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qttracereplay qttracereplay "/usr/bin/qttracereplay-qt4" "40" \ + --slave /usr/share/man/man1/qttracereplay.1.gz qttracereplay.1.gz \ + "/usr/share/man/man1/qttracereplay-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/qvfb qvfb "/usr/bin/qvfb-qt4" "40" \ + --slave /usr/share/man/man1/qvfb.1.gz qvfb.1.gz \ + "/usr/share/man/man1/qvfb-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/xmlpatterns xmlpatterns "/usr/bin/xmlpatterns-qt4" "40" \ + --slave /usr/share/man/man1/xmlpatterns.1.gz xmlpatterns.1.gz \ + "/usr/share/man/man1/xmlpatterns-qt4.1.gz" + +update-alternatives --install \ + /usr/bin/xmlpatternsvalidator xmlpatternsvalidator "/usr/bin/xmlpatternsvalidator-qt4" "40" \ + --slave /usr/share/man/man1/xmlpatternsvalidator.1.gz xmlpatternsvalidator.1.gz \ + "/usr/share/man/man1/xmlpatternsvalidator-qt4.1.gz" + #DEBHELPER# diff --git a/debian/qt4-qmlviewer.install b/debian/qt4-qmlviewer.install index c7e0b5b..8bc5a8d 100644 --- a/debian/qt4-qmlviewer.install +++ b/debian/qt4-qmlviewer.install @@ -1 +1 @@ -usr/bin/qmlviewer +usr/bin/qmlviewer-qt4 diff --git a/debian/qt4-qmlviewer.postinst b/debian/qt4-qmlviewer.postinst new file mode 100644 index 0000000..6942cf1 --- /dev/null +++ b/debian/qt4-qmlviewer.postinst @@ -0,0 +1,10 @@ +#!/bin/sh + +set -e + +update-alternatives --install \ + /usr/bin/qmlviewer qmlviewer "/usr/bin/qmlviewer-qt4" "40" \ + --slave /usr/share/man/man1/qmlviewer.1.gz qmlviewer.1.gz \ + "/usr/share/man/man1/qmlviewer-qt4.1.gz" + +#DEBHELPER# -- 1.7.10.4