99636127d1
The checks whether we have a Qt prefix build were broken for top-level builds. Non-prefix top-level builds were incorrectly detected as prefix builds. For top-level non-prefix builds QT_HOST_DATA/QT_INSTALL_PREFIX becomes something like "~/my/build/dir/qtbase" but .qmake.cache (and .qmake.super) is/are created in "~/my/build/dir". This patch extends the prefix_build check by probing for the existence of .qmake.super, which only exists for top-level builds. Also, we add qt_prefix_build_check.prf as central place for determining whether we have a prefix build to make sure that qt_configure.prf and qt_build_config.prf use the same logic. Fixes: QTBUG-76185 Change-Id: I2b76fe26013496aaf2dac96ea711b06a69550a29 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
22 lines
520 B
Plaintext
22 lines
520 B
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.
|
|
#
|
|
|
|
defineTest(qtIsPrefixBuild) {
|
|
prefixdir = $$1
|
|
# qtbase non-prefix build?
|
|
exists($$prefixdir/.qmake.cache): \
|
|
return(false)
|
|
# top-level non-prefix build?
|
|
contains(prefixdir, .*/qtbase):exists($$dirname(prefixdir)/.qmake.super): \
|
|
return(false)
|
|
return(true)
|
|
}
|