summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarius Storm-Olsen <marius.storm-olsen@nokia.com>2011-04-01 05:52:05 -0500
committerMarius Storm-Olsen <marius.storm-olsen@nokia.com>2011-04-01 05:52:05 -0500
commitf74a0d4d3500c7e61a2cfa17f2c054f1033bcb84 (patch)
tree6b3b183a89be67b1f7d0d29fc6e4ab612e130e08
parent0325a887c260fe1793663e389bc91447f41ac444 (diff)
Make 'make install' work, and don't pull in already installed modules on build
qmake would pull in the already installed module .pri files when building Qt. This would mess up the paths while building a module.
-rw-r--r--patches/0111-Make-sure-we-don-t-always-pull-in-modules-from-insta.patch31
-rw-r--r--patches/0112-Add-module.prf-and-install-MODULE_PRI-for-each-modul.patch344
2 files changed, 375 insertions, 0 deletions
diff --git a/patches/0111-Make-sure-we-don-t-always-pull-in-modules-from-insta.patch b/patches/0111-Make-sure-we-don-t-always-pull-in-modules-from-insta.patch
new file mode 100644
index 0000000..aad48f8
--- /dev/null
+++ b/patches/0111-Make-sure-we-don-t-always-pull-in-modules-from-insta.patch
@@ -0,0 +1,31 @@
+From 0e040e810c19da1c6d77d88c8c077b2f9791abe6 Mon Sep 17 00:00:00 2001
+From: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
+Date: Wed, 30 Mar 2011 11:59:54 -0500
+Subject: [PATCH] Make sure we don't always pull in modules from installed mkspecs
+
+When building Qt, qmake should not pull in mkspecs from an installed
+version, as this will lead to incorrect paths for the current build.
+
+So, here we ensure only to pull in modules from there we detected the
+qconfig.pri, and ensure we still handle the QMAKEPATH case used by
+some.
+---
+ qtbase/mkspecs/features/qt_config.prf | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/qtbase/mkspecs/features/qt_config.prf b/qtbase/mkspecs/features/qt_config.prf
+index 5afd82c..071bb6c 100644
+--- a/qtbase/mkspecs/features/qt_config.prf
++++ b/qtbase/mkspecs/features/qt_config.prf
+@@ -12,7 +12,7 @@ isEmpty(QMAKE_QT_CONFIG)|!exists($$QMAKE_QT_CONFIG) {
+ } else {
+ debug(1, "Loaded .qconfig.pri from ($$QMAKE_QT_CONFIG)")
+ for(dir, $$list($$unique($$list($$dirname(QMAKE_QT_CONFIG) \
+- $$split($$list($$[QMAKE_MKSPECS]), $$DIRLIST_SEPARATOR))))) {
++ $$replace($$list($$split($$list($$(QMAKEPATH)), $$DIRLIST_SEPARATOR)), $, /mkspecs))))) {
+ debug(1, "Loading modules from $${dir}")
+ for(mod, $$list($$files($$dir/modules/qt_*.pri))) {
+ # For installed Qt these paths will be common for all modules
+--
+1.7.3.2.343.g7d43d
+
diff --git a/patches/0112-Add-module.prf-and-install-MODULE_PRI-for-each-modul.patch b/patches/0112-Add-module.prf-and-install-MODULE_PRI-for-each-modul.patch
new file mode 100644
index 0000000..4cbd4b0
--- /dev/null
+++ b/patches/0112-Add-module.prf-and-install-MODULE_PRI-for-each-modul.patch
@@ -0,0 +1,344 @@
+From 34e59b54f0247a857430a4c0b1ec99b29b614e33 Mon Sep 17 00:00:00 2001
+From: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
+Date: Fri, 1 Apr 2011 05:47:28 -0500
+Subject: [PATCH] Add module.prf, and install MODULE_PRI for each module
+
+Output warning if not present
+---
+ activeqt/src/src.pro | 3 +++
+ qt3support/src/src.pro | 3 +++
+ qtbase/mkspecs/features/module.prf | 7 +++++++
+ qtbase/src/corelib/corelib.pro | 6 +++++-
+ qtbase/src/dbus/dbus.pro | 5 ++++-
+ qtbase/src/gui/gui.pro | 4 ++++
+ qtbase/src/network/network.pro | 5 ++++-
+ qtbase/src/opengl/opengl.pro | 4 ++++
+ qtbase/src/openvg/openvg.pro | 3 +++
+ qtbase/src/sql/sql.pro | 4 ++++
+ qtbase/src/testlib/testlib.pro | 4 ++++
+ qtbase/src/uitools/uitools.pro | 7 +++++--
+ qtbase/src/xml/xml.pro | 4 ++++
+ qtdeclarative/src/declarative/declarative.pro | 4 ++++
+ qtmultimedia/src/multimedia/multimedia.pro | 3 +++
+ qtscript/src/script/script.pro | 4 ++++
+ qtscript/src/scripttools/scripttools.pro | 4 ++++
+ qtsvg/src/svg/svg.pro | 4 ++++
+ qttools/src/assistant/lib/lib.pro | 4 ++++
+ qttools/src/designer/src/designer/designer.pro | 4 ++++
+ qtxmlpatterns/src/xmlpatterns/xmlpatterns.pro | 4 ++++
+ 21 files changed, 85 insertions(+), 5 deletions(-)
+ create mode 100644 qtbase/mkspecs/features/module.prf
+
+diff --git a/activeqt/src/src.pro b/activeqt/src/src.pro
+index 9026c51..faa866d 100644
+--- a/activeqt/src/src.pro
++++ b/activeqt/src/src.pro
+@@ -4,3 +4,6 @@ subdir_activeqt.subdir = $$IN_PWD/activeqt
+ subdir_activeqt.target = sub_activeqt
+
+ SUBDIRS += subdir_activeqt
++
++CONFIG += module
++MODULE_PRI = ../modules/qt_activeqt.pri
+diff --git a/qt3support/src/src.pro b/qt3support/src/src.pro
+index e958ad8..82598f2 100644
+--- a/qt3support/src/src.pro
++++ b/qt3support/src/src.pro
+@@ -1,2 +1,5 @@
+ TEMPLATE = subdirs
+ SUBDIRS += qt3support
++
++CONFIG += module
++MODULE_PRI = $$PWD/../modules/qt_qt3support.pri
+diff --git a/qtbase/mkspecs/features/module.prf b/qtbase/mkspecs/features/module.prf
+new file mode 100644
+index 0000000..248f7f5
+--- /dev/null
++++ b/qtbase/mkspecs/features/module.prf
+@@ -0,0 +1,7 @@
++!isEmpty(MODULE_PRI) {
++ pritarget.path = $$[QT_INSTALL_DATA]/mkspecs/modules
++ pritarget.files = $$MODULE_PRI
++ INSTALLS = pritarget
++} else {
++ warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects")
++}
+diff --git a/qtbase/src/corelib/corelib.pro b/qtbase/src/corelib/corelib.pro
+index 4efb1b9..a31d1e5 100644
+--- a/qtbase/src/corelib/corelib.pro
++++ b/qtbase/src/corelib/corelib.pro
+@@ -1,7 +1,11 @@
+-MODULE = core
+ TARGET = QtCore
+ QPRO_PWD = $$PWD
+ QT =
++
++CONFIG += module
++MODULE = core # not corelib, as per project file
++MODULE_PRI = ../modules/qt_core.pri
++
+ DEFINES += QT_BUILD_CORE_LIB QT_NO_USING_NAMESPACE
+ win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x67000000
+ irix-cc*:QMAKE_CXXFLAGS += -no_prelink -ptused
+diff --git a/qtbase/src/dbus/dbus.pro b/qtbase/src/dbus/dbus.pro
+index 52ed217..86ee835 100644
+--- a/qtbase/src/dbus/dbus.pro
++++ b/qtbase/src/dbus/dbus.pro
+@@ -2,7 +2,10 @@ TARGET = QtDBus
+ QPRO_PWD = $$PWD
+ QT = core \
+ xml
+-CONFIG += link_pkgconfig
++
++CONFIG += link_pkgconfig module
++MODULE_PRI = ../modules/qt_dbus.pri
++
+ DEFINES += QT_BUILD_DBUS_LIB \
+ DBUS_API_SUBJECT_TO_CHANGE
+ QMAKE_CXXFLAGS += $$QT_CFLAGS_DBUS
+diff --git a/qtbase/src/gui/gui.pro b/qtbase/src/gui/gui.pro
+index fda76a2..518aac5 100644
+--- a/qtbase/src/gui/gui.pro
++++ b/qtbase/src/gui/gui.pro
+@@ -1,6 +1,10 @@
+ TARGET = QtGui
+ QPRO_PWD = $$PWD
+ QT = core
++
++CONFIG += module
++MODULE_PRI = ../modules/qt_gui.pri
++
+ DEFINES += QT_BUILD_GUI_LIB QT_NO_USING_NAMESPACE
+ win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x65000000
+ irix-cc*:QMAKE_CXXFLAGS += -no_prelink -ptused
+diff --git a/qtbase/src/network/network.pro b/qtbase/src/network/network.pro
+index 948922b..1539617 100644
+--- a/qtbase/src/network/network.pro
++++ b/qtbase/src/network/network.pro
+@@ -1,7 +1,10 @@
+ # Qt network module
+-
+ TARGET = QtNetwork
+ QPRO_PWD = $$PWD
++
++CONFIG += module
++MODULE_PRI = ../modules/qt_network.pri
++
+ DEFINES += QT_BUILD_NETWORK_LIB QT_NO_USING_NAMESPACE
+ #DEFINES += QLOCALSERVER_DEBUG QLOCALSOCKET_DEBUG
+ #DEFINES += QNETWORKDISKCACHE_DEBUG
+diff --git a/qtbase/src/opengl/opengl.pro b/qtbase/src/opengl/opengl.pro
+index 5774bef..d919ebb 100644
+--- a/qtbase/src/opengl/opengl.pro
++++ b/qtbase/src/opengl/opengl.pro
+@@ -1,6 +1,10 @@
+ TARGET = QtOpenGL
+ QPRO_PWD = $$PWD
+ QT = core gui
++
++CONFIG += module
++MODULE_PRI = ../modules/qt_opengl.pri
++
+ DEFINES += QT_BUILD_OPENGL_LIB
+ DEFINES += QT_NO_USING_NAMESPACE
+ win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x63000000
+diff --git a/qtbase/src/openvg/openvg.pro b/qtbase/src/openvg/openvg.pro
+index e185949..5451c2d 100644
+--- a/qtbase/src/openvg/openvg.pro
++++ b/qtbase/src/openvg/openvg.pro
+@@ -2,6 +2,9 @@ TARGET = QtOpenVG
+ QT += core \
+ gui
+
++CONFIG += module
++MODULE_PRI = ../modules/qt_openvg.pri
++
+ DEFINES+=QT_BUILD_OPENVG_LIB
+
+ contains(QT_CONFIG, shivavg) {
+diff --git a/qtbase/src/sql/sql.pro b/qtbase/src/sql/sql.pro
+index 81aa3c0..550b24b 100644
+--- a/qtbase/src/sql/sql.pro
++++ b/qtbase/src/sql/sql.pro
+@@ -1,6 +1,10 @@
+ TARGET = QtSql
+ QPRO_PWD = $$PWD
+ QT = core
++
++CONFIG += module
++MODULE_PRI = ../modules/qt_sql.pri
++
+ DEFINES += QT_BUILD_SQL_LIB
+ DEFINES += QT_NO_USING_NAMESPACE
+ win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x62000000
+diff --git a/qtbase/src/testlib/testlib.pro b/qtbase/src/testlib/testlib.pro
+index c25d23d..311c793 100644
+--- a/qtbase/src/testlib/testlib.pro
++++ b/qtbase/src/testlib/testlib.pro
+@@ -1,6 +1,10 @@
+ TARGET = QtTest
+ QPRO_PWD = $$PWD
+ QT = core
++
++CONFIG += module
++MODULE_PRI = ../modules/qt_testlib.pri
++
+ INCLUDEPATH += .
+ unix:!embedded:QMAKE_PKGCONFIG_DESCRIPTION = Qt \
+ Unit \
+diff --git a/qtbase/src/uitools/uitools.pro b/qtbase/src/uitools/uitools.pro
+index 2a1f6ed..71a4d83 100644
+--- a/qtbase/src/uitools/uitools.pro
++++ b/qtbase/src/uitools/uitools.pro
+@@ -1,9 +1,12 @@
+-MODULE = uitools
+ QPRO_PWD = $$PWD
+ TEMPLATE = lib
+ TARGET = $$qtLibraryTarget(QtUiTools)
+ QT = core xml
+-CONFIG += qt staticlib
++
++CONFIG += qt staticlib # Not adding module here, since the module pri's are only used for building
++MODULE_PRI = ../modules/qt_uitools.pri \
++ ../modules/qt_uilib.pri
++
+ DESTDIR = $$QMAKE_LIBDIR_QT
+
+ symbian {
+diff --git a/qtbase/src/xml/xml.pro b/qtbase/src/xml/xml.pro
+index 019153c..e6fce60 100644
+--- a/qtbase/src/xml/xml.pro
++++ b/qtbase/src/xml/xml.pro
+@@ -1,6 +1,10 @@
+ TARGET = QtXml
+ QPRO_PWD = $$PWD
+ QT = core
++
++CONFIG += module
++MODULE_PRI = ../modules/qt_xml.pri
++
+ DEFINES += QT_BUILD_XML_LIB QT_NO_USING_NAMESPACE
+ win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x61000000
+
+diff --git a/qtdeclarative/src/declarative/declarative.pro b/qtdeclarative/src/declarative/declarative.pro
+index fdbb070..a54284f 100644
+--- a/qtdeclarative/src/declarative/declarative.pro
++++ b/qtdeclarative/src/declarative/declarative.pro
+@@ -2,6 +2,10 @@ load(qt_module)
+
+ TARGET = QtDeclarative
+ QPRO_PWD = $$PWD
++
++CONFIG += module
++MODULE_PRI += ../../modules/qt_declarative.pri
++
+ QT = core gui script network
+ contains(QT_CONFIG, svg): QT += svg
+ DEFINES += QT_BUILD_DECLARATIVE_LIB QT_NO_URL_CAST_FROM_STRING
+diff --git a/qtmultimedia/src/multimedia/multimedia.pro b/qtmultimedia/src/multimedia/multimedia.pro
+index 781a29a..8d7483e 100644
+--- a/qtmultimedia/src/multimedia/multimedia.pro
++++ b/qtmultimedia/src/multimedia/multimedia.pro
+@@ -4,6 +4,9 @@ TARGET = QtMultimedia
+ QPRO_PWD = $$PWD
+ QT = core gui
+
++CONFIG += module
++MODULE_PRI = ../../modules/qt_multimedia.pri
++
+ DEFINES += QT_BUILD_MULTIMEDIA_LIB QT_NO_USING_NAMESPACE
+
+ unix|win32-g++*:QMAKE_PKGCONFIG_REQUIRES = QtCore QtGui
+diff --git a/qtscript/src/script/script.pro b/qtscript/src/script/script.pro
+index e4ff8a3..8e9a3ab 100644
+--- a/qtscript/src/script/script.pro
++++ b/qtscript/src/script/script.pro
+@@ -3,6 +3,10 @@ load(qt_module)
+ TARGET = QtScript
+ QPRO_PWD = $$PWD
+ QT = core
++
++CONFIG += module
++MODULE_PRI = ../../modules/qt_script.pri
++
+ DEFINES += JSC=QTJSC jscyyparse=qtjscyyparse jscyylex=qtjscyylex jscyyerror=qtjscyyerror WTF=QTWTF
+ DEFINES += QT_BUILD_SCRIPT_LIB
+ DEFINES += QT_NO_USING_NAMESPACE
+diff --git a/qtscript/src/scripttools/scripttools.pro b/qtscript/src/scripttools/scripttools.pro
+index a42eb6a..1c2f1c9 100644
+--- a/qtscript/src/scripttools/scripttools.pro
++++ b/qtscript/src/scripttools/scripttools.pro
+@@ -3,6 +3,10 @@ load(qt_module)
+ TARGET = QtScriptTools
+ QPRO_PWD = $$PWD
+ QT = core gui script
++
++CONFIG += module
++MODULE_PRI = ../../modules/qt_scripttools.pri
++
+ DEFINES += QT_BUILD_SCRIPTTOOLS_LIB
+ DEFINES += QT_NO_USING_NAMESPACE
+ #win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x66000000
+diff --git a/qtsvg/src/svg/svg.pro b/qtsvg/src/svg/svg.pro
+index 3572d59..db5d9b6 100644
+--- a/qtsvg/src/svg/svg.pro
++++ b/qtsvg/src/svg/svg.pro
+@@ -3,6 +3,10 @@ load(qt_module)
+ TARGET = QtSvg
+ QPRO_PWD = $$PWD
+ QT = core gui
++
++CONFIG += module
++MODULE_PRI = ../../modules/qt_svg.pri
++
+ DEFINES += QT_BUILD_SVG_LIB
+ DEFINES += QT_NO_USING_NAMESPACE
+ win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x66000000
+diff --git a/qttools/src/assistant/lib/lib.pro b/qttools/src/assistant/lib/lib.pro
+index fd6a348..c3fd158 100644
+--- a/qttools/src/assistant/lib/lib.pro
++++ b/qttools/src/assistant/lib/lib.pro
+@@ -5,6 +5,10 @@ QT += sql \
+ network
+ TEMPLATE = lib
+ TARGET = QtHelp
++
++CONFIG += module
++MODULE_PRI += ../../../modules/qt_help.pri
++
+ DEFINES += QHELP_LIB \
+ QT_CLUCENE_SUPPORT
+ CONFIG += qt \
+diff --git a/qttools/src/designer/src/designer/designer.pro b/qttools/src/designer/src/designer/designer.pro
+index 166c253..f542cd6 100644
+--- a/qttools/src/designer/src/designer/designer.pro
++++ b/qttools/src/designer/src/designer/designer.pro
+@@ -2,6 +2,10 @@ load(qt_module)
+
+ DESTDIR = $$QT.designer.bins
+ QT += xml network designer
++
++CONFIG += module
++MODULE_PRI = ../../../../modules/qt_designer.pri
++
+ contains(QT_CONFIG, script): QT += script
+ build_all:!build_pass {
+ CONFIG -= build_all
+diff --git a/qtxmlpatterns/src/xmlpatterns/xmlpatterns.pro b/qtxmlpatterns/src/xmlpatterns/xmlpatterns.pro
+index d7db65c..45f8c1c 100644
+--- a/qtxmlpatterns/src/xmlpatterns/xmlpatterns.pro
++++ b/qtxmlpatterns/src/xmlpatterns/xmlpatterns.pro
+@@ -4,6 +4,10 @@ TARGET = QtXmlPatterns
+ QPRO_PWD = $$PWD
+ QT = core \
+ network
++
++CONFIG += module
++MODULE_PRI = ../../modules/qt_xmlpatterns.pri
++
+ DEFINES += QT_BUILD_XMLPATTERNS_LIB \
+ QT_NO_USING_NAMESPACE
+ win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x61000000
+--
+1.7.3.2.343.g7d43d
+