f2619db300
we can't derive the doc index paths from QMAKEMODULES, as the mkspecs dir may not live at the repo's top level. instead, explicitly announce the repo's top level build dirs in QTREPOS, and use that accordingly. Task-number: QTBUG-38862 Change-Id: I643ad2bf63c8fca0ffc44ce3457dbe8a16dcab07 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
82 lines
2.3 KiB
Plaintext
82 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.
|
|
#
|
|
|
|
!contains(QMAKE_INTERNAL_INCLUDED_FILES, .*qmodule\\.pri) {
|
|
QMAKE_QT_MODULE = $$[QT_HOST_DATA/get]/mkspecs/qmodule.pri
|
|
!exists($$QMAKE_QT_MODULE)|!include($$QMAKE_QT_MODULE, "", true) {
|
|
error("Cannot load qmodule.pri!")
|
|
} else {
|
|
debug(1, "Loaded qmodule.pri from ($$QMAKE_QT_MODULE)")
|
|
}
|
|
} else {
|
|
debug(1, "Not loading qmodule.pri twice")
|
|
}
|
|
|
|
PRECOMPILED_DIR = .pch
|
|
OBJECTS_DIR = .obj
|
|
MOC_DIR = .moc
|
|
RCC_DIR = .rcc
|
|
UI_DIR = .uic
|
|
|
|
QMAKE_DIR_REPLACE_SANE = PRECOMPILED_DIR OBJECTS_DIR MOC_DIR RCC_DIR UI_DIR
|
|
|
|
# force_independent can be set externally. prefix_build not.
|
|
!exists($$[QT_HOST_DATA]/.qmake.cache): \
|
|
CONFIG += prefix_build force_independent
|
|
|
|
!build_pass:!isEmpty(_QMAKE_SUPER_CACHE_):force_independent {
|
|
# When doing a -prefix build of top-level qt5/qt.pro, we need to announce
|
|
# this repo's output dir to the other repos.
|
|
MODULE_BASE_OUTDIR = $$shadowed($$dirname(_QMAKE_CONF_))
|
|
!contains(QTREPOS, $$MODULE_BASE_OUTDIR): \
|
|
cache(QTREPOS, add super, MODULE_BASE_OUTDIR)
|
|
# This repo's module pris' location needs to be made known to qmake.
|
|
isEmpty(MODULE_QMAKE_OUTDIR): MODULE_QMAKE_OUTDIR = $$MODULE_BASE_OUTDIR
|
|
modpath = $$MODULE_QMAKE_OUTDIR/mkspecs/modules
|
|
!contains(QMAKEMODULES, $$modpath): \
|
|
cache(QMAKEMODULES, add super, modpath)
|
|
unset(modpath)
|
|
}
|
|
|
|
mac {
|
|
!isEmpty(QMAKE_RPATHDIR){
|
|
CONFIG += absolute_library_soname
|
|
}
|
|
}
|
|
|
|
cross_compile: \
|
|
CONFIG += force_bootstrap
|
|
|
|
CONFIG += \
|
|
create_prl link_prl \
|
|
prepare_docs qt_docs_targets \
|
|
no_private_qt_headers_warning QTDIR_build \
|
|
no_dll \
|
|
# Qt modules get compiled without exceptions enabled by default.
|
|
# However, testcases should be still built with exceptions.
|
|
exceptions_off testcase_exceptions
|
|
|
|
|
|
defineTest(qtBuildPart) {
|
|
bp = $$eval($$upper($$section(_QMAKE_CONF_, /, -2, -2))_BUILD_PARTS)
|
|
isEmpty(bp): bp = $$QT_BUILD_PARTS
|
|
contains(bp, $$1): return(true)
|
|
return(false)
|
|
}
|
|
|
|
defineTest(qtNomakeTools) {
|
|
qtBuildPart(tools): return()
|
|
for (d, 1) {
|
|
$${d}.CONFIG += no_default_target no_default_install
|
|
export($${d}.CONFIG)
|
|
}
|
|
}
|