diff options
author | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2010-08-23 17:42:00 (GMT) |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2010-08-23 18:34:51 (GMT) |
commit | e645157a5dcf702df21b566441a56753eaefe6c4 (patch) | |
tree | 347c29558b21d3512626b2273e6c42f40ede9c37 | |
parent | 80a8a3b878eff6f29b68fb4ff4dd9a7b4e00237e (diff) | |
download | Qt-e645157a5dcf702df21b566441a56753eaefe6c4.zip Qt-e645157a5dcf702df21b566441a56753eaefe6c4.tar.gz Qt-e645157a5dcf702df21b566441a56753eaefe6c4.tar.bz2 |
fix build after first webkit self-injection attempt
it didn't work for several reasons:
- if the configures don't add webkit to QT_CONFIG, src.pro doesn't even
know that it needs to build WebKit at all, so WebKit would never
inject itself into the build. hen-and-egg problem.
- the in-Qt build doesn't use WebKit.pro in the first place, so a proper
recursive qmake would never create qt_webkit_version.pri. it worked
under unix because configure collects all project files irrespective
of the actual SUBDIRS structure.
- a proper recursive qmake will cache the qt config, so the injection
wouldn't be effective during the first qmake run
so instead let the configures copy the pri file.
-rwxr-xr-x | configure | 3 | ||||
-rwxr-xr-x | configure.exe | bin | 1320448 -> 1320960 bytes | |||
-rw-r--r-- | src/3rdparty/webkit/WebKit.pro | 6 | ||||
-rw-r--r-- | tools/configure/configureapp.cpp | 8 |
4 files changed, 9 insertions, 8 deletions
@@ -7163,7 +7163,8 @@ if [ "$CFG_WEBKIT" = "auto" ]; then fi if [ "$CFG_WEBKIT" = "yes" ]; then - # Don't add "webkit" to QT_CONFIG here - it injects itself via the module. + # This include takes care of adding "webkit" to QT_CONFIG. + cp -f "$relpath/src/3rdparty/webkit/WebKit/qt/qt_webkit_version.pri" "$outpath/mkspecs/modules/qt_webkit_version.pri" # The reason we set CFG_WEBKIT, is such that the printed overview of what will be enabled, shows correctly. CFG_WEBKIT="yes" else diff --git a/configure.exe b/configure.exe Binary files differindex c5bff85..982e038 100755 --- a/configure.exe +++ b/configure.exe diff --git a/src/3rdparty/webkit/WebKit.pro b/src/3rdparty/webkit/WebKit.pro index ef251c5..c7df391 100644 --- a/src/3rdparty/webkit/WebKit.pro +++ b/src/3rdparty/webkit/WebKit.pro @@ -34,9 +34,3 @@ symbian { } include(WebKit/qt/docs/docs.pri) - -!isEmpty(QT_BUILD_TREE) { - QMAKE_SUBSTITUTES += qt_webkit_version - qt_webkit_version.input = WebKit/qt/qt_webkit_version.pri - qt_webkit_version.output = $$QT_BUILD_TREE/mkspecs/modules/qt_webkit_version.pri -} diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 3a0fcde..7049306 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -2667,7 +2667,13 @@ void Configure::generateOutputVars() qtConfig += "audio-backend"; } - // Don't add "webkit" to QT_CONFIG here - it injects itself via the module. + if (dictionary["WEBKIT"] == "yes") { + // This include takes care of adding "webkit" to QT_CONFIG. + QString src = sourcePath + "/src/3rdparty/webkit/WebKit/qt/qt_webkit_version.pri"; + QString dst = buildPath + "/mkspecs/modules/qt_webkit_version.pri"; + QFile::remove(dst); + QFile::copy(src, dst); + } if (dictionary["DECLARATIVE"] == "yes") { if (dictionary[ "SCRIPT" ] == "no") { |