summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@qt.io>2018-06-25 21:08:57 +0200
committerOswald Buddenhagen <oswald.buddenhagen@qt.io>2018-07-13 11:09:07 +0000
commit33037150991a0dae0da769af8f46d1c15a27c728 (patch)
tree1d8052acf60ecffcbe243ba7e9b6c31b4b0bd7c5
parent7d05144dde55ab0519e5dd1e441547456a28d80e (diff)
configure: pull ahead gcc-sysroot processing
the sysroot flags need to be established even before setting up the spec, because as soon as that happens, toolchain.prf will try to determine the default paths and cache them. this also fixes sysroot use in toolchain flag support tests, which run (somewhat) independently from the toolchain setup. Task-number: QTBUG-63483 Change-Id: I7be1540e766dac58fb16f63176aa8d2879b51ae0 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
-rw-r--r--configure.json3
-rw-r--r--configure.pri4
-rw-r--r--mkspecs/features/qt_configure.prf2
3 files changed, 7 insertions, 2 deletions
diff --git a/configure.json b/configure.json
index b4a87f5505..07514992d1 100644
--- a/configure.json
+++ b/configure.json
@@ -211,7 +211,7 @@
"testTypeDependencies": {
"linkerSupportsFlag": [ "use_gold_linker" ],
- "verifySpec": [ "shared", "use_gold_linker", "compiler-flags", "gcc-sysroot", "qmakeargs", "commit" ],
+ "verifySpec": [ "shared", "use_gold_linker", "compiler-flags", "qmakeargs", "commit" ],
"compile": [ "verifyspec" ],
"detectPkgConfig": [ "cross_compile", "machineTuple" ],
"library": [ "pkg-config" ],
@@ -518,6 +518,7 @@
"features": {
"prepare": {
+ "condition": "features.gcc-sysroot || true",
"output": [ "prepareSpec", "prepareOptions", "preparePaths", "reloadSpec" ]
},
"machineTuple": {
diff --git a/configure.pri b/configure.pri
index f1c63f575d..ec03504488 100644
--- a/configure.pri
+++ b/configure.pri
@@ -1069,6 +1069,10 @@ defineTest(qtConfOutput_gccSysroot) {
"\"QMAKE_LFLAGS += --sysroot=$$config.input.sysroot\""
export(EXTRA_QMAKE_ARGS)
+ # This one is for qtConfToolchainSupportsFlag().
+ QMAKE_CXXFLAGS += --sysroot=$$config.input.sysroot
+ export(QMAKE_CXXFLAGS)
+
output = \
"!host_build {" \
" QMAKE_CFLAGS += --sysroot=\$\$[QT_SYSROOT]" \
diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf
index c4ddda5b1f..2ddcda58b1 100644
--- a/mkspecs/features/qt_configure.prf
+++ b/mkspecs/features/qt_configure.prf
@@ -344,7 +344,7 @@ defineReplace(qtConfToolchainSupportsFlag) {
conftest = "int main() { return 0; }"
write_file("$$test_out_dir/conftest.cpp", conftest)|error()
- qtRunLoggedCommand("$$test_cmd_base $$QMAKE_CXX $${1} -o conftest-out conftest.cpp"): \
+ qtRunLoggedCommand("$$test_cmd_base $$QMAKE_CXX $$QMAKE_CXXFLAGS $${1} -o conftest-out conftest.cpp"): \
return(true)
return(false)
}