From c1e372a5a3a2decb3c63e28819e601d5e86ff6ea Mon Sep 17 00:00:00 2001 From: Rohan McGovern Date: Thu, 26 May 2011 09:19:38 +1000 Subject: Fixed ordering problem when configuring with `-make ' Prior to this change, running configure with the `-make' option would affect the order in which parts of Qt are built. This is unintuitive and would easily cause build failures. For example, configuring with `./configure -make demos' would attempt to build demos before building libs, which, of course, would fail. Refactor the code so that the result is the same regardless of the order of `-make' options. Change-Id: Idfa61834a0f01d0628a9a1ae27ece94ae3647e6d Reviewed-on: http://codereview.qt.nokia.com/128 Reviewed-by: Lincoln Ramsay Reviewed-by: Oswald Buddenhagen --- qtbase.pro | 38 ++++++++++++++++++++++++-------------- 1 file changed, 24 insertions(+), 14 deletions(-) (limited to 'qtbase.pro') diff --git a/qtbase.pro b/qtbase.pro index 9b140025bb..95f497fef4 100644 --- a/qtbase.pro +++ b/qtbase.pro @@ -13,20 +13,30 @@ module_qtbase_tests.depends = module_qtbase_src module_qtbase_tests.CONFIG = no_default_install #process the projects -for(PROJECT, $$list($$lower($$unique(QT_BUILD_PARTS)))) { - isEqual(PROJECT, examples) { - SUBDIRS += examples - } else:isEqual(PROJECT, demos) { - SUBDIRS += demos - } else:isEqual(PROJECT, tests) { - SUBDIRS += module_qtbase_tests - } else:isEqual(PROJECT, libs) { - include(src/src.pro) - } else:isEqual(PROJECT, qmake) { -# SUBDIRS += qmake - } else { - message(Unknown PROJECT: $$PROJECT) - } +PROJECTS=$$eval($$list($$lower($$unique(QT_BUILD_PARTS)))) +# note that the order matters for these blocks! +contains(PROJECTS, qmake) { + PROJECTS -= qmake + # nothing to be done +} +contains(PROJECTS, libs) { + PROJECTS -= libs + include(src/src.pro) +} +contains(PROJECTS, examples) { + PROJECTS -= examples + SUBDIRS += examples +} +contains(PROJECTS, demos) { + PROJECTS -= demos + SUBDIRS += demos +} +contains(PROJECTS, tests) { + PROJECTS -= tests + SUBDIRS += module_qtbase_tests +} +!isEmpty(PROJECTS) { + message(Unknown PROJECTS: $$PROJECTS) } !symbian: confclean.depends += clean -- cgit v1.2.3