QMake: Make 'entrypoint' and 'qt' CONFIG values order-independent

If users have
    CONFIG += qt
in their .pro file then the project won't link if the platform requires
the entrypoint module. This is because qt.prf is loaded before
entrypoint.prf in this situation.

Make the CONFIG values 'entrypoint' and 'qt' independent of their order
by embedding the content of entrypoint.prf into qt.prf.

Pick-to: 6.5
Fixes: QTBUG-117674
Change-Id: I72a3c9be023a73d70454533262544a4211cb6974
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
(cherry picked from commit b289d669a5025c7969ee35f2ee0d4284d173dec5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Joerg Bornemann 2023-09-29 11:17:07 +02:00 committed by Qt Cherry-pick Bot
parent d2a71d0324
commit ab971d249f
2 changed files with 12 additions and 10 deletions

View File

@ -1,10 +0,0 @@
!qt: return()
win32 {
!console:contains(TEMPLATE, ".*app"): \
QT_PRIVATE += entrypoint_private
} else:uikit {
qt_depends = $$resolve_depends(QT, "QT.")
!watchos:equals(TEMPLATE, app):contains(qt_depends, gui(-private)?): \
QT_PRIVATE += entrypoint_private
}

View File

@ -69,6 +69,18 @@ unix {
}
}
# Load the entrypoint module if requested
entrypoint {
win32 {
!console:contains(TEMPLATE, ".*app"): \
QT_PRIVATE += entrypoint_private
} else:uikit {
qt_depends = $$resolve_depends(QT, "QT.")
!watchos:equals(TEMPLATE, app):contains(qt_depends, gui(-private)?): \
QT_PRIVATE += entrypoint_private
}
}
# Will automatically add plugins, so run first
contains(QT_CONFIG, permissions): load(permissions)