centralize module directory calculation

Change-Id: I5db529676b3287013008f28623a541fee1cde6a0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
bb10
Oswald Buddenhagen 2012-10-23 22:15:43 +02:00 committed by The Qt Project
parent c9266e7cb9
commit 4a9ffb5c9e
5 changed files with 29 additions and 48 deletions

View File

@ -0,0 +1,25 @@
# Find the module's source root dir.
MODULE_PROFILE_DIR = $$_PRO_FILE_PWD_
for(ever) {
exists($$MODULE_PROFILE_DIR/sync.profile):break()
nmpri = $$dirname(MODULE_PROFILE_DIR)
equals(nmpri, $$MODULE_PROFILE_DIR):error("No sync.profile found. This does not look like a Qt module source tree.")
MODULE_PROFILE_DIR = $$nmpri
unset(nmpri)
}
isEmpty(MODULE_BASE_DIR): MODULE_BASE_DIR = $$MODULE_PROFILE_DIR
isEmpty(MODULE_BASE_OUTDIR): MODULE_BASE_OUTDIR = $$shadowed($$MODULE_BASE_DIR)
isEmpty(MODULE_QMAKE_OUTDIR): MODULE_QMAKE_OUTDIR = $$MODULE_BASE_OUTDIR
QTDIR = $$[QT_HOST_PREFIX]
exists($$QTDIR/.qmake.cache) {
mod_component_base = $$QTDIR
mod_qmake_base = $$QTDIR
} else {
mod_component_base = $$MODULE_BASE_OUTDIR
mod_qmake_base = $$MODULE_QMAKE_OUTDIR
}
# Permit modules to enforce being built outside QTDIR.
force_independent: mod_component_base = $$MODULE_BASE_OUTDIR

View File

@ -32,19 +32,7 @@ else: \
MODULE_DEFINE = QT_$${ucmodule}_LIB
MODULE_DEFINES = $$MODULE_DEFINE $$MODULE_DEFINES
# Find the module's source root dir.
MODULE_PROFILE_DIR = $$_PRO_FILE_PWD_
for(ever) {
exists($$MODULE_PROFILE_DIR/sync.profile):break()
nmpri = $$dirname(MODULE_PROFILE_DIR)
equals(nmpri, $$MODULE_PROFILE_DIR):error("No sync.profile found. This does not look like a Qt module source tree.")
MODULE_PROFILE_DIR = $$nmpri
unset(nmpri)
}
isEmpty(MODULE_BASE_DIR): MODULE_BASE_DIR = $$MODULE_PROFILE_DIR
isEmpty(MODULE_BASE_OUTDIR): MODULE_BASE_OUTDIR = $$shadowed($$MODULE_BASE_DIR)
isEmpty(MODULE_QMAKE_OUTDIR): MODULE_QMAKE_OUTDIR = $$MODULE_BASE_OUTDIR
load(qt_build_paths)
# This check will be removed soon. Weird indentation to avoid reindenting the code later.
!isEmpty(MODULE_PRI) {
@ -123,12 +111,6 @@ CONFIG -= fix_output_dirs
!isEmpty(QMAKE_DOCS) {
doc_subdir = doc
QTDIR = $$[QT_HOST_PREFIX]
!force_independent:exists($$QTDIR/.qmake.cache): \
mod_component_base = $$QTDIR
else: \
mod_component_base = $$MODULE_BASE_OUTDIR
unset(QMAKE_DOCS_INDEX)
QMAKE_DOCS_OUTPUTDIR = $$mod_component_base/$$doc_subdir/qt$${MODULE}
for(qmod, QMAKEMODULES): \

View File

@ -1,15 +1,6 @@
!build_pass {
QTDIR = $$[QT_HOST_PREFIX]
exists($$QTDIR/.qmake.cache) {
mod_component_base = $$QTDIR
mod_qmake_base = $$QTDIR
} else {
mod_component_base = $$MODULE_BASE_OUTDIR
mod_qmake_base = $$MODULE_QMAKE_OUTDIR
}
# Permit modules to enforce being built outside QTDIR.
force_independent: mod_component_base = $$MODULE_BASE_OUTDIR
load(qt_build_paths)
isEmpty(MODULE_INSTALL_LIBS): MODULE_INSTALL_LIBS = $$[QT_INSTALL_LIBS/raw]

View File

@ -1,8 +1,4 @@
QTDIR = $$[QT_HOST_PREFIX]
!force_independent:exists($$QTDIR/.qmake.cache): \
mod_component_base = $$QTDIR
else: \
mod_component_base = $$MODULE_BASE_OUTDIR
load(qt_build_paths)
!build_pass {
qtPrepareTool(QMAKE_SYNCQT, syncqt)

View File

@ -16,20 +16,7 @@ INSTALLS += target
MODULE_DEPENDS = $$replace(QT, -private$, )
# Find the module's source root dir.
MODULE_PROFILE_DIR = $$_PRO_FILE_PWD_
for(ever) {
exists($$MODULE_PROFILE_DIR/sync.profile):break()
nmpri = $$dirname(MODULE_PROFILE_DIR)
equals(nmpri, $$MODULE_PROFILE_DIR): \
error("No sync.profile found. This does not look like a Qt module source tree.")
MODULE_PROFILE_DIR = $$nmpri
unset(nmpri)
}
isEmpty(MODULE_BASE_DIR): MODULE_BASE_DIR = $$MODULE_PROFILE_DIR
MODULE_BASE_OUTDIR = $$shadowed($$MODULE_BASE_DIR)
isEmpty(MODULE_QMAKE_OUTDIR): MODULE_QMAKE_OUTDIR = $$MODULE_BASE_OUTDIR
load(qt_build_paths)
load(resolve_target)
cmd = $$shell_path($$QMAKE_RESOLVED_TARGET)