From 0a07f5e4a5bd7063fa1838f6c74da28b96da7378 Mon Sep 17 00:00:00 2001 From: Marius Storm-Olsen Date: Thu, 6 Jan 2011 12:52:17 -0600 Subject: [PATCH] Make each module refer to its own bin/ Since modules cannot rely on QtCore having a build directory, nor can they build the applications directly into $$[QT_INSTALL_BINS] each module needs their own bin/. Add this path to each module's pri file, so others can use their applications --- qt3support/modules/qt_qt3support.pri | 1 + qtbase/bin/syncqt | 1 + qtbase/mkspecs/features/qt_config.prf | 1 + qtbase/mkspecs/features/qt_functions.prf | 9 ++++++--- qtbase/src/modules/qt_core.pri | 1 + qtbase/src/modules/qt_dbus.pri | 1 + qtbase/src/modules/qt_network.pri | 1 + qtbase/src/modules/qt_opengl.pri | 1 + qtbase/src/modules/qt_openvg.pri | 1 + qtbase/src/modules/qt_sql.pri | 1 + qtbase/src/modules/qt_testlib.pri | 1 + qtbase/src/modules/qt_xml.pri | 1 + qtdeclarative/modules/qt_declarative.pri | 1 + qtphonon/modules/qt_phonon.pri | 1 + qtscript/modules/qt_script.pri | 1 + qtscript/modules/qt_scripttools.pri | 1 + qtsvg/modules/qt_svg.pri | 1 + qttools/modules/qt_clucene.pri | 1 + qttools/modules/qt_designer.pri | 1 + qttools/modules/qt_help.pri | 1 + qttools/modules/qt_uitools.pri | 1 + qtxmlpatterns/modules/qt_xmlpatterns.pri | 1 + 22 files changed, 27 insertions(+), 3 deletions(-) diff --git a/qt3support/modules/qt_qt3support.pri b/qt3support/modules/qt_qt3support.pri index 5554999..f78c269 100644 --- a/qt3support/modules/qt_qt3support.pri +++ b/qt3support/modules/qt_qt3support.pri @@ -4,6 +4,7 @@ QT_QT3SUPPORT_MINOR_VERSION = $$QT_MINOR_VERSION QT_QT3SUPPORT_PATCH_VERSION = $$QT_PATCH_VERSION QT.qt3support.name = Qt3Support +QT.qt3support.bins = $$QT_MODULE_BIN_BASE QT.qt3support.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/Qt3Support QT.qt3support.private_includes = $$QT_MODULE_INCLUDE_BASE/Qt3Support/private QT.qt3support.sources = $$QT_MODULE_BASE/src/qt3support diff --git a/qtbase/bin/syncqt b/qtbase/bin/syncqt index 6af59c4..a5434ca 100755 --- a/qtbase/bin/syncqt +++ b/qtbase/bin/syncqt @@ -1008,6 +1008,7 @@ foreach my $lib (@modules_to_sync) { my $moduleprifwd = "$qtbasedir/mkspecs/modules/$modulepriname"; open MODULE_PRI_FILE, ">$moduleprifwd"; print MODULE_PRI_FILE "QT_MODULE_BASE = $basedir\n"; + print MODULE_PRI_FILE "QT_MODULE_BIN_BASE = $out_basedir/bin\n"; print MODULE_PRI_FILE "QT_MODULE_INCLUDE_BASE = $out_basedir/include\n"; print MODULE_PRI_FILE "QT_MODULE_LIB_BASE = $out_basedir/lib\n"; print MODULE_PRI_FILE "include($modulepri)\n"; diff --git a/qtbase/mkspecs/features/qt_config.prf b/qtbase/mkspecs/features/qt_config.prf index 2973c7e..7e80ad3 100644 --- a/qtbase/mkspecs/features/qt_config.prf +++ b/qtbase/mkspecs/features/qt_config.prf @@ -20,6 +20,7 @@ isEmpty(QMAKE_QT_CONFIG)|!exists($$QMAKE_QT_CONFIG) { # qt_.pri forwarding file QT_MODULE_INCLUDE_BASE = $$[QT_INSTALL_HEADERS] QT_MODULE_LIB_BASE = $$[QT_INSTALL_LIBS] + QT_MODULE_BIN_BASE = $$[QT_INSTALL_BINS] include($$mod) } } diff --git a/qtbase/mkspecs/features/qt_functions.prf b/qtbase/mkspecs/features/qt_functions.prf index b9b0fd8..df4508d 100644 --- a/qtbase/mkspecs/features/qt_functions.prf +++ b/qtbase/mkspecs/features/qt_functions.prf @@ -157,10 +157,13 @@ defineTest(qtAddModule) { # variable, default defineTest(qtPrepareTool) { - isEmpty($$1) { - !isEmpty(QT_BUILD_TREE):$$1 = $$QT_BUILD_TREE/bin/$$2 - else:$$1 = $$[QT_INSTALL_BINS]/$$2 + MODBASE = $$[QT_INSTALL_BINS] + !isEmpty(QT_BUILD_TREE):MODBASE = $$QT_BUILD_TREE/bin + count(ARGS, 2, greaterThan) { + isEmpty(QT.$${3}.bins):warning("No QT.$${3}.bins, module path ignored for qtPrepareTool($$1, $$2, $$3)") + else:MODBASE = $$eval(QT.$${3}.bins) } + isEmpty($$1):$$1 = $$MODBASE/$$2 $$1 ~= s,[/\\\\],$$QMAKE_DIR_SEP, contains(QMAKE_HOST.os, Windows):!contains($$1, .*\\.(exe|bat)$) { exists($$eval($$1).bat) { diff --git a/qtbase/src/modules/qt_core.pri b/qtbase/src/modules/qt_core.pri index 494f96f..99f3fa6 100644 --- a/qtbase/src/modules/qt_core.pri +++ b/qtbase/src/modules/qt_core.pri @@ -4,6 +4,7 @@ QT_CORE_MINOR_VERSION = $$QT_MINOR_VERSION QT_CORE_PATCH_VERSION = $$QT_PATCH_VERSION QT.core.name = QtCore +QT.core.bins = $$QT_MODULE_BIN_BASE QT.core.includes = $$QT_MODULE_INCLUDE_BASE/QtCore QT.core.private_includes = $$QT_MODULE_INCLUDE_BASE/QtCore/private QT.core.sources = $$QT_MODULE_BASE/src/corelib diff --git a/qtbase/src/modules/qt_dbus.pri b/qtbase/src/modules/qt_dbus.pri index 73fdf99..74949b1 100644 --- a/qtbase/src/modules/qt_dbus.pri +++ b/qtbase/src/modules/qt_dbus.pri @@ -4,6 +4,7 @@ QT_DBUS_MINOR_VERSION = $$QT_MINOR_VERSION QT_DBUS_PATCH_VERSION = $$QT_PATCH_VERSION QT.dbus.name = QtDBus +QT.dbus.bins = $$QT_MODULE_BIN_BASE QT.dbus.includes = $$QT_MODULE_INCLUDE_BASE/QtDBus QT.dbus.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDBus/private QT.dbus.sources = $$QT_MODULE_BASE/src/dbus diff --git a/qtbase/src/modules/qt_network.pri b/qtbase/src/modules/qt_network.pri index c8b1f00..37c941b 100644 --- a/qtbase/src/modules/qt_network.pri +++ b/qtbase/src/modules/qt_network.pri @@ -4,6 +4,7 @@ QT_NETWORK_MINOR_VERSION = $$QT_MINOR_VERSION QT_NETWORK_PATCH_VERSION = $$QT_PATCH_VERSION QT.network.name = QtNetwork +QT.network.bins = $$QT_MODULE_BIN_BASE QT.network.includes = $$QT_MODULE_INCLUDE_BASE/QtNetwork QT.network.private_includes = $$QT_MODULE_INCLUDE_BASE/QtNetwork/private QT.network.sources = $$QT_MODULE_BASE/src/network diff --git a/qtbase/src/modules/qt_opengl.pri b/qtbase/src/modules/qt_opengl.pri index eb47b00..0bd0df7 100644 --- a/qtbase/src/modules/qt_opengl.pri +++ b/qtbase/src/modules/qt_opengl.pri @@ -4,6 +4,7 @@ QT_OPENGL_MINOR_VERSION = $$QT_MINOR_VERSION QT_OPENGL_PATCH_VERSION = $$QT_PATCH_VERSION QT.opengl.name = QtOpenGL +QT.opengl.bins = $$QT_MODULE_BIN_BASE QT.opengl.includes = $$QT_MODULE_INCLUDE_BASE/QtOpenGL QT.opengl.private_includes = $$QT_MODULE_INCLUDE_BASE/QtOpenGL/private QT.opengl.sources = $$QT_MODULE_BASE/src/opengl diff --git a/qtbase/src/modules/qt_openvg.pri b/qtbase/src/modules/qt_openvg.pri index 09811ba..9a3ef8b 100644 --- a/qtbase/src/modules/qt_openvg.pri +++ b/qtbase/src/modules/qt_openvg.pri @@ -4,6 +4,7 @@ QT_OPENVG_MINOR_VERSION = $$QT_MINOR_VERSION QT_OPENVG_PATCH_VERSION = $$QT_PATCH_VERSION QT.openvg.name = QtOpenVG +QT.openvg.bins = $$QT_MODULE_BIN_BASE QT.openvg.includes = $$QT_MODULE_INCLUDE_BASE/QtOpenVG QT.openvg.private_includes = $$QT_MODULE_INCLUDE_BASE/QtOpenVG/private QT.openvg.sources = $$QT_MODULE_BASE/src/openvg diff --git a/qtbase/src/modules/qt_sql.pri b/qtbase/src/modules/qt_sql.pri index 42dde1b..d9b856e 100644 --- a/qtbase/src/modules/qt_sql.pri +++ b/qtbase/src/modules/qt_sql.pri @@ -4,6 +4,7 @@ QT_SQL_MINOR_VERSION = $$QT_MINOR_VERSION QT_SQL_PATCH_VERSION = $$QT_PATCH_VERSION QT.sql.name = QtSql +QT.sql.bins = $$QT_MODULE_BIN_BASE QT.sql.includes = $$QT_MODULE_INCLUDE_BASE/QtSql QT.sql.private_includes = $$QT_MODULE_INCLUDE_BASE/QtSql/private QT.sql.sources = $$QT_MODULE_BASE/src/sql diff --git a/qtbase/src/modules/qt_testlib.pri b/qtbase/src/modules/qt_testlib.pri index 5971808..7e9ca09 100644 --- a/qtbase/src/modules/qt_testlib.pri +++ b/qtbase/src/modules/qt_testlib.pri @@ -4,6 +4,7 @@ QT_TEST_MINOR_VERSION = $$QT_MINOR_VERSION QT_TEST_PATCH_VERSION = $$QT_PATCH_VERSION QT.testlib.name = QtTest +QT.testlib.bins = $$QT_MODULE_BIN_BASE QT.testlib.includes = $$QT_MODULE_INCLUDE_BASE/QtTest QT.testlib.private_includes = $$QT_MODULE_INCLUDE_BASE/QtTest/private QT.testlib.sources = $$QT_MODULE_BASE/src/testlib diff --git a/qtbase/src/modules/qt_xml.pri b/qtbase/src/modules/qt_xml.pri index c0c630c..c967cd7 100644 --- a/qtbase/src/modules/qt_xml.pri +++ b/qtbase/src/modules/qt_xml.pri @@ -4,6 +4,7 @@ QT_XML_MINOR_VERSION = $$QT_MINOR_VERSION QT_XML_PATCH_VERSION = $$QT_PATCH_VERSION QT.xml.name = QtXml +QT.xml.bins = $$QT_MODULE_BIN_BASE QT.xml.includes = $$QT_MODULE_INCLUDE_BASE/QtXml QT.xml.private_includes = $$QT_MODULE_INCLUDE_BASE/QtXml/private QT.xml.sources = $$QT_MODULE_BASE/src/xml diff --git a/qtdeclarative/modules/qt_declarative.pri b/qtdeclarative/modules/qt_declarative.pri index 6071af6..a24745b 100644 --- a/qtdeclarative/modules/qt_declarative.pri +++ b/qtdeclarative/modules/qt_declarative.pri @@ -4,6 +4,7 @@ QT_DECLARATIVE_MINOR_VERSION = $$QT_MINOR_VERSION QT_DECLARATIVE_PATCH_VERSION = $$QT_PATCH_VERSION QT.declarative.name = QtDeclarative +QT.declarative.bins = $$QT_MODULE_BIN_BASE QT.declarative.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtDeclarative QT.declarative.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDeclarative/private QT.declarative.sources = $$QT_MODULE_BASE/src/declarative diff --git a/qtphonon/modules/qt_phonon.pri b/qtphonon/modules/qt_phonon.pri index ec7757d..6311190 100644 --- a/qtphonon/modules/qt_phonon.pri +++ b/qtphonon/modules/qt_phonon.pri @@ -1,4 +1,5 @@ QT.phonon.name = phonon +QT.phonon.bins = $$QT_MODULE_BIN_BASE QT.phonon.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/phonon QT.phonon.private_includes = $$QT_MODULE_INCLUDE_BASE/phonon/private QT.phonon.sources = $$QT_MODULE_BASE/src/3rdparty/phonon/phonon diff --git a/qtscript/modules/qt_script.pri b/qtscript/modules/qt_script.pri index 4feaa25..2063693 100644 --- a/qtscript/modules/qt_script.pri +++ b/qtscript/modules/qt_script.pri @@ -4,6 +4,7 @@ QT_SCRIPT_MINOR_VERSION = $$QT_MINOR_VERSION QT_SCRIPT_PATCH_VERSION = $$QT_PATCH_VERSION QT.script.name = QtScript +QT.script.bins = $$QT_MODULE_BIN_BASE QT.script.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtScript QT.script.private_includes = $$QT_MODULE_INCLUDE_BASE/QtScript/private QT.script.sources = $$QT_MODULE_BASE/src/script diff --git a/qtscript/modules/qt_scripttools.pri b/qtscript/modules/qt_scripttools.pri index e874b27..6fff333 100644 --- a/qtscript/modules/qt_scripttools.pri +++ b/qtscript/modules/qt_scripttools.pri @@ -4,6 +4,7 @@ QT_SCRIPTTOOLS_MINOR_VERSION = $$QT_MINOR_VERSION QT_SCRIPTTOOLS_PATCH_VERSION = $$QT_PATCH_VERSION QT.scripttools.name = QtScriptTools +QT.scripttools.bins = $$QT_MODULE_BIN_BASE QT.scripttools.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtScriptTools QT.scripttools.private_includes = $$QT_MODULE_INCLUDE_BASE/QtScriptTools/private QT.scripttools.sources = $$QT_MODULE_BASE/src/scripttools diff --git a/qtsvg/modules/qt_svg.pri b/qtsvg/modules/qt_svg.pri index 90e9865..88edb85 100644 --- a/qtsvg/modules/qt_svg.pri +++ b/qtsvg/modules/qt_svg.pri @@ -4,6 +4,7 @@ QT_SVG_MINOR_VERSION = $$QT_MINOR_VERSION QT_SVG_PATCH_VERSION = $$QT_PATCH_VERSION QT.svg.name = QtSvg +QT.svg.bins = $$QT_MODULE_BIN_BASE QT.svg.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtSvg QT.svg.private_includes = $$QT_MODULE_INCLUDE_BASE/QtSvg/private QT.svg.sources = $$QT_MODULE_BASE/src/svg diff --git a/qttools/modules/qt_clucene.pri b/qttools/modules/qt_clucene.pri index dc709bc..77beaa6 100644 --- a/qttools/modules/qt_clucene.pri +++ b/qttools/modules/qt_clucene.pri @@ -4,6 +4,7 @@ QT_CLUCENE_MINOR_VERSION = $$QT_MINOR_VERSION QT_CLUCENE_PATCH_VERSION = $$QT_PATCH_VERSION QT.clucene.name = QtCLucene +QT.clucene.bins = $$QT_MODULE_BIN_BASE QT.clucene.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtCLucene QT.clucene.private_includes = $$QT_MODULE_INCLUDE_BASE/QtCLucene/private QT.clucene.sources = $$QT_MODULE_BASE/src/assistant/lib/fulltextsearch diff --git a/qttools/modules/qt_designer.pri b/qttools/modules/qt_designer.pri index 01340ac..a617834 100644 --- a/qttools/modules/qt_designer.pri +++ b/qttools/modules/qt_designer.pri @@ -4,6 +4,7 @@ QT_DESIGNER_MINOR_VERSION = $$QT_MINOR_VERSION QT_DESIGNER_PATCH_VERSION = $$QT_PATCH_VERSION QT.designer.name = QtDesigner +QT.designer.bins = $$QT_MODULE_BIN_BASE QT.designer.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtDesigner QT.designer.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDesigner/private QT.designer.sources = $$QT_MODULE_BASE/src/designer/src/lib diff --git a/qttools/modules/qt_help.pri b/qttools/modules/qt_help.pri index d99f57a..07e815d 100644 --- a/qttools/modules/qt_help.pri +++ b/qttools/modules/qt_help.pri @@ -4,6 +4,7 @@ QT_HELP_MINOR_VERSION = $$QT_MINOR_VERSION QT_HELP_PATCH_VERSION = $$QT_PATCH_VERSION QT.help.name = QtHelp +QT.help.bins = $$QT_MODULE_BIN_BASE QT.help.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtHelp QT.help.private_includes = $$QT_MODULE_INCLUDE_BASE/QtHelp/private QT.help.sources = $$QT_MODULE_BASE/src/assistant/lib diff --git a/qttools/modules/qt_uitools.pri b/qttools/modules/qt_uitools.pri index 65a527e..c5160c5 100644 --- a/qttools/modules/qt_uitools.pri +++ b/qttools/modules/qt_uitools.pri @@ -4,6 +4,7 @@ QT_UITOOLS_MINOR_VERSION = $$QT_MINOR_VERSION QT_UITOOLS_PATCH_VERSION = $$QT_PATCH_VERSION QT.uitools.name = QtUiTools +QT.uitools.bins = $$QT_MODULE_BIN_BASE QT.uitools.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtUiTools QT.uitools.private_includes = $$QT_MODULE_INCLUDE_BASE/QtUiTools/private QT.uitools.sources = $$QT_MODULE_BASE/src/designer/src/uitools diff --git a/qtxmlpatterns/modules/qt_xmlpatterns.pri b/qtxmlpatterns/modules/qt_xmlpatterns.pri index a5a50e6..329b784 100644 --- a/qtxmlpatterns/modules/qt_xmlpatterns.pri +++ b/qtxmlpatterns/modules/qt_xmlpatterns.pri @@ -4,6 +4,7 @@ QT_XMLPATTERNS_MINOR_VERSION = $$QT_MINOR_VERSION QT_XMLPATTERNS_PATCH_VERSION = $$QT_PATCH_VERSION QT.xmlpatterns.name = QtXmlPatterns +QT.xmlpatterns.bins = $$QT_MODULE_BIN_BASE QT.xmlpatterns.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtXmlPatterns QT.xmlpatterns.private_includes = $$QT_MODULE_INCLUDE_BASE/QtXmlPatterns/private QT.xmlpatterns.sources = $$QT_MODULE_BASE/src/xmlpatterns -- 1.7.3.4