configure: log -I and -L before doing first library check
... for debugging purposes. this needs to work in every configure run even though the options (currently) come from qtbase's global scope. this is accomplished by automatically injecting the test type dependencies declared in the 'builtins' scope (where they generally make no sense whatsoever, because there are no tests there) into other scopes (the first one that has a test of the particular type, specifically). we do that *after* the scope's own test type deps, so it can do its custom stuff first (it can explicitly activate the required features if it depends on some global stuff). Change-Id: I67317da1b55804d39458bdbcf13d39a3e57a13bf Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>bb10
parent
659eff9f2d
commit
7e27afd88f
|
|
@ -17,5 +17,15 @@
|
|||
"list-features": "void",
|
||||
"list-libraries": "void"
|
||||
}
|
||||
},
|
||||
|
||||
"testTypeDependencies": {
|
||||
"library": [ "library-paths" ]
|
||||
},
|
||||
|
||||
"features": {
|
||||
"library-paths": {
|
||||
"output": [ "libraryPaths" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1156,7 +1156,7 @@ defineTest(qtConfSetupTestTypeDeps) {
|
|||
}
|
||||
}
|
||||
|
||||
defineTest(qtConfEnsureTestTypeDeps) {
|
||||
defineTest(qtConfEnsureTestTypeDepsOne) {
|
||||
depsn = $${currentConfig}.testTypeDependencies.$${1}._KEYS_
|
||||
!isEmpty($$depsn) {
|
||||
for (dep, $$depsn) {
|
||||
|
|
@ -1170,12 +1170,18 @@ defineTest(qtConfEnsureTestTypeDeps) {
|
|||
fwdsn = $${currentConfig}.testTypeForwards.$${1}
|
||||
!isEmpty($$fwdsn) {
|
||||
for (fwd, $$fwdsn): \
|
||||
qtConfEnsureTestTypeDeps($$fwd)
|
||||
qtConfEnsureTestTypeDepsOne($$fwd)
|
||||
$$fwdsn =
|
||||
export($$fwdsn)
|
||||
}
|
||||
}
|
||||
|
||||
defineTest(qtConfEnsureTestTypeDeps) {
|
||||
qtConfEnsureTestTypeDepsOne($$1)
|
||||
currentConfig = config.builtins
|
||||
qtConfEnsureTestTypeDepsOne($$1)
|
||||
}
|
||||
|
||||
defineTest(qtRunSingleTest) {
|
||||
tpfx = $${currentConfig}.tests.$${1}
|
||||
defined($${tpfx}.result, var): \
|
||||
|
|
@ -1660,6 +1666,11 @@ defineTest(qtConfCheckErrors) {
|
|||
# output generation
|
||||
#
|
||||
|
||||
defineTest(qtConfOutput_libraryPaths) {
|
||||
qtLog("Global lib dirs: [$$val_escape(EXTRA_LIBDIR)] [$$val_escape(QMAKE_DEFAULT_LIBDIRS)]")
|
||||
qtLog("Global inc dirs: [$$val_escape(EXTRA_INCLUDEPATH)] [$$val_escape(QMAKE_DEFAULT_INCDIRS)]")
|
||||
}
|
||||
|
||||
# qtConfOutputVar(modifier, output, name, value)
|
||||
defineTest(qtConfOutputVar) {
|
||||
modifier = $$1
|
||||
|
|
@ -2028,6 +2039,9 @@ for(ever) {
|
|||
}
|
||||
configsToProcess = $$subconfigs $$configsToProcess
|
||||
}
|
||||
# 'builtins' is used for command line parsing and test type dependency
|
||||
# injection, but its features must not be processed regularly.
|
||||
allModuleConfigs = $$member(allConfigs, 1, -1)
|
||||
|
||||
QMAKE_SAVED_ARGS = $$QMAKE_EXTRA_ARGS
|
||||
QMAKE_REDO_CONFIG = false
|
||||
|
|
@ -2036,7 +2050,7 @@ qtConfCheckErrors()
|
|||
|
||||
!isEmpty(config.input.list-features) {
|
||||
all_ft =
|
||||
for (currentConfig, allConfigs) {
|
||||
for (currentConfig, allModuleConfigs) {
|
||||
for (k, $${currentConfig}.features._KEYS_) {
|
||||
pp = $$eval($${currentConfig}.features.$${k}.purpose)
|
||||
!isEmpty(pp) {
|
||||
|
|
@ -2056,7 +2070,7 @@ qtConfCheckErrors()
|
|||
|
||||
!isEmpty(config.input.list-libraries) {
|
||||
logn()
|
||||
for (currentConfig, allConfigs) {
|
||||
for (currentConfig, allModuleConfigs) {
|
||||
!isEmpty($${currentConfig}.exports._KEYS_) {
|
||||
!isEmpty($${currentConfig}.module): \
|
||||
logn($$eval($${currentConfig}.module):)
|
||||
|
|
@ -2093,7 +2107,7 @@ qtLog("Command line: $$qtSystemQuote($$QMAKE_SAVED_ARGS)")
|
|||
$$QMAKE_REDO_CONFIG: \
|
||||
qtLog("config.opt: $$qtSystemQuote($$QMAKE_EXTRA_REDO_ARGS)")
|
||||
|
||||
for (currentConfig, allConfigs) {
|
||||
for (currentConfig, allModuleConfigs) {
|
||||
qtConfSetModuleName()
|
||||
qtConfSetupModuleOutputs()
|
||||
# do early checks, mainly to validate the command line
|
||||
|
|
@ -2137,7 +2151,7 @@ CONFIG += qt_conf_tests_allowed
|
|||
logn()
|
||||
logn("Running configuration tests...")
|
||||
|
||||
for (currentConfig, allConfigs) {
|
||||
for (currentConfig, allModuleConfigs) {
|
||||
tdir = $$eval($${currentConfig}.testDir)
|
||||
isEmpty(tdir): tdir = config.tests
|
||||
QMAKE_CONFIG_TESTS_DIR = $$absolute_path($$tdir, $$eval($${currentConfig}.dir))
|
||||
|
|
|
|||
Loading…
Reference in New Issue