qt5base-lts/mkspecs/features/qt_parts.prf
Oswald Buddenhagen f1fd824ebb make src/ subdir optional
there is at least one examples-only repo (qtwebkit-examples).

we look for tools/ only when src/ is also present, based on the
assumption that if there was only tools/, it would be actually named
src/ (like in qttools). the split between the two is nowadays arbitrary
anyway.

Change-Id: I982b1d0e26dd7d0a5de751546099a58f86390124
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-04-26 19:15:21 +02:00

74 lines
2.3 KiB
Plaintext

#
# W A R N I N G
# -------------
#
# This file is not part of the Qt API. It exists purely as an
# implementation detail. It may change from version to version
# without notice, or even be removed.
#
# We mean it.
#
# Ensure that each module has a .qmake.cache when properly qmake'd.
cache()
load(qt_build_config)
TEMPLATE = subdirs
bp = $$eval($$upper($$TARGET)_BUILD_PARTS)
!isEmpty(bp): QT_BUILD_PARTS = $$bp
exists($$_PRO_FILE_PWD_/src/src.pro) {
sub_src.subdir = src
sub_src.target = sub-src
SUBDIRS += sub_src
exists($$_PRO_FILE_PWD_/tools/tools.pro) {
sub_tools.subdir = tools
sub_tools.target = sub-tools
sub_tools.depends = sub_src
# conditional treatment happens on a case-by-case basis
SUBDIRS += sub_tools
}
}
exists($$_PRO_FILE_PWD_/examples/examples.pro) {
sub_examples.subdir = examples
sub_examples.target = sub-examples
contains(SUBDIRS, sub_src): sub_examples.depends = sub_src
examples_need_tools: sub_examples.depends += sub_tools
!contains(QT_BUILD_PARTS, examples): sub_examples.CONFIG = no_default_target no_default_install
SUBDIRS += sub_examples
}
# Some modules still have these
exists($$_PRO_FILE_PWD_/demos/demos.pro) {
sub_demos.subdir = demos
sub_demos.target = sub-demos
contains(SUBDIRS, sub_src): sub_demos.depends = sub_src
examples_need_tools: sub_demos.depends += sub_tools
!contains(QT_BUILD_PARTS, examples): sub_demos.CONFIG = no_default_target no_default_install
SUBDIRS += sub_demos
}
exists($$_PRO_FILE_PWD_/tests/tests.pro) {
sub_tests.subdir = tests
sub_tests.target = sub-tests
contains(SUBDIRS, sub_src): sub_tests.depends = sub_src # The tests may have a run-time only dependency on other parts
tests_need_tools: sub_tests.depends += sub_tools
sub_tests.CONFIG = no_default_install
!contains(QT_BUILD_PARTS, tests) {
sub_tests.CONFIG += no_default_target
} else {
# Make sure these are there in case we need them
sub_tools.CONFIG -= no_default_target
sub_examples.CONFIG -= no_default_target
sub_demos.CONFIG -= no_default_target
}
SUBDIRS += sub_tests
}
QT_BUILD_PARTS -= libs tools examples tests
!isEmpty(QT_BUILD_PARTS): warning("Unknown build part(s): $$QT_BUILD_PARTS")