diff options
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/features/data/configure.json | 4 | ||||
-rw-r--r-- | mkspecs/features/qt_configure.prf | 30 |
2 files changed, 27 insertions, 7 deletions
diff --git a/mkspecs/features/data/configure.json b/mkspecs/features/data/configure.json index 98ccde1ee3..c4e33d0188 100644 --- a/mkspecs/features/data/configure.json +++ b/mkspecs/features/data/configure.json @@ -12,7 +12,9 @@ "recheck": { "type": "void", "name": "cache_use", "value": "positive" }, "recheck-all": { "type": "void", "name": "cache_use", "value": "none" }, - "redo": { "type": "redo" } + "redo": { "type": "redo" }, + + "list-features": "void" } } } diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf index b1c8d5b33a..5c895bcde3 100644 --- a/mkspecs/features/qt_configure.prf +++ b/mkspecs/features/qt_configure.prf @@ -1258,14 +1258,14 @@ defineTest(qtConfProcessFeatures) { # reporting # -QT_CONF_REPORT_PADDING = "........................................" - -defineTest(qtConfReportPadded) { - pad = $$num_add($$str_size($$QT_CONF_REPORT_PADDING), -$$str_size($${1})) +defineReplace(qtConfPadCols) { + pad = $$num_add($$str_size($$2), -$$str_size($${1})) lessThan(pad, 0): pad = 0 - str = "$$1 $$str_member($$QT_CONF_REPORT_PADDING, 0, $$pad)" + return("$$1 $$str_member($$2, 0, $$pad) $$3") +} - qtConfAddReport("$$str $${2}") +defineTest(qtConfReportPadded) { + qtConfAddReport($$qtConfPadCols($$1, "........................................", $$2)) } defineReplace(qtConfCollectFeatures) { @@ -1783,6 +1783,24 @@ QMAKE_REDO_CONFIG = false qtConfParseCommandLine() qtConfCheckErrors() +!isEmpty(config.input.list-features) { + all_ft = + for (currentConfig, allConfigs) { + for (k, $${currentConfig}.features._KEYS_) { + pp = $$eval($${currentConfig}.features.$${k}.purpose) + !isEmpty(pp) { + all_ft += $$qtConfPadCols($$k, ".......................", \ + $$section(pp, $$escape_expand(\\n), 0, 0)) + } + } + } + all_ft = $$sorted(all_ft) + logn() + for (ft, all_ft): \ + logn($$ft) + error() +} + for (currentConfig, allConfigs) { qtConfSetModuleName() qtConfSetupModuleOutputs() |