qt5base-lts/mkspecs/features/default_post.prf
Bradley T. Hughes e2628ef943 Make it possible to disable the 'check' target
If subdir.CONFIG contains no_check_target, we do not recurse into
that subdir when generating the 'check' target.

This will be used to selectively disable crashing tests on Mac OS X.
Currently, all autotests are disabled on Mac OS X. The goal is to re-
enable them, but not all at once.  This approach allows us to get each
change through the CI system individually.

The first step is get all tests to build, but not run, then we will
re-enable the tests for each module, possibly disabling individual
tests at the same time.

Change-Id: I69f62c238f381ae0315d414cd71d76bc88b088dd
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2011-11-16 10:32:10 +01:00

67 lines
2.6 KiB
Plaintext

QT_BREAKPAD_ROOT_PATH = $$(QT_BREAKPAD_ROOT_PATH)
!isEmpty(QT_BREAKPAD_ROOT_PATH): \ # quick test first whether requested ...
!staticlib:!static:CONFIG(release, debug|release):contains(TEMPLATE, .*(app|lib)): \ # is it applicable?
!contains(TARGET, .*phony_target.*): \ # monster hack, you don't really see this here, right? ;)
system($$QT_BREAKPAD_ROOT_PATH/qtbreakpadsymbols --breakpad-exists) { # do we really have it?
CONFIG += breakpad
CONFIG -= no_debug_info separate_debug_info
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO
QMAKE_LFLAGS_RELEASE = $$QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO
}
CONFIG(debug, debug|release):load(debug)
else:load(release)
debug_and_release:load(debug_and_release)
incredibuild_xge {
CONFIG -= incredibuild_xge
CONFIG = incredibuild_xge $$CONFIG
}
breakpad {
load(resolve_target)
win32 {
DEBUGFILENAME = $${QMAKE_RESOLVED_TARGET}
PDBFILENAME = $$replace(QMAKE_RESOLVED_TARGET, ...$, pdb)
DEBUGFILENAME ~= s,/,\\,
PDBFILENAME ~= s,/,\\,
QMAKE_CLEAN += $$PDBFILENAME # for the debug case it is hardcoded in qmake
} else {
DEBUGFILENAME = $$QMAKE_RESOLVED_TARGET
}
PROJECTPATH = $$OUT_PWD
win32:PROJECTPATH ~= s,/,\\,
!isEmpty(QMAKE_POST_LINK):QMAKE_POST_LINK = $$QMAKE_POST_LINK$$escape_expand(\\n\\t)
QMAKE_POST_LINK = $$QMAKE_POST_LINK$$quote($${QT_BREAKPAD_ROOT_PATH}$${QMAKE_DIR_SEP}qtbreakpadsymbols \"$$DEBUGFILENAME\" \"$$PROJECTPATH\")
!isEmpty(QMAKE_STRIP):QMAKE_POST_LINK = $$QMAKE_POST_LINK$$escape_expand(\\n\\t)$$quote($$QMAKE_STRIP \"$$DEBUGFILENAME\")
}
QMAKE_INCDIR += $$QMAKE_INCDIR_POST
QMAKE_LIBDIR += $$QMAKE_LIBDIR_POST
# Let every project have a standard GNU `check' target
!contains(QMAKE_EXTRA_TARGETS, check) {
# `make check' should iterate through all subdirs
# (except those with no_default_target or no_check_target)
contains(TEMPLATE, subdirs) {
for(subdir, SUBDIRS) {
subdir_config=$$eval($${subdir}.CONFIG)
!contains(subdir_config, no_check_target):!contains(subdir_config, no_default_target):check.recurse += $$subdir
unset(subdir_config)
}
!isEmpty(check.recurse) {
# setup the recurse target only when there is to recurse into
check.CONFIG = recursive
check.recurse_target = check
}
}
# `make check' should imply building the project
else {
check.depends = first
}
QMAKE_EXTRA_TARGETS += check
}