diff options
author | Oswald Buddenhagen <oswald.buddenhagen@digia.com> | 2013-10-25 21:04:35 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-29 15:38:06 +0100 |
commit | d7a0d243a984f032a8f838e7b44297eac81ef190 (patch) | |
tree | 7c1013364658b76275a07e53f4e2b919aa14ebd9 /qtbase.pro | |
parent | f37ed85a55f977159ea79d6ecbefd857d7d6cb63 (diff) |
validate qconfig-*.h against qfeatures.txt
Change-Id: I59b7e30cfaa2b1bf2c5d4a3e04b5169f3c9439b5
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'qtbase.pro')
-rw-r--r-- | qtbase.pro | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/qtbase.pro b/qtbase.pro index 3fc759615b..d608695970 100644 --- a/qtbase.pro +++ b/qtbase.pro @@ -145,6 +145,17 @@ FWD_FEATURES_H = \ '$${LITERAL_HASH}include "../../src/corelib/global/qfeatures.h"' write_file($$OUT_PWD/include/QtCore/qfeatures.h, FWD_FEATURES_H)|error("Aborting.") +lines = $$cat($$absolute_path($$QT_QCONFIG_PATH, $$PWD/src/corelib/global), lines) +for (line, lines) { + # We ignore all defines that don't follow the #ifndef + indent pattern. + # This makes it possible to have unchecked defines which are no features. + t = $$replace(line, "^$${LITERAL_HASH} define QT_NO_(\\S+)\\s*$", "\\1") + !isEqual(t, $$line) { + isEmpty(features.$${t}.name): \ + error("$$QT_QCONFIG_PATH disables unknown feature $$t") + } +} + #mkspecs mkspecs.path = $$[QT_HOST_DATA]/mkspecs mkspecs.files = \ |