mirror of https://github.com/qt/qtbase.git
redo QT_PLUGIN_PATH assembly for non-installed execution
it is a bad idea to extract plugin paths from library modules. instead, just collect plugin paths from all known repositories. Change-Id: I527325f20e9cf98ae974997530af1b2893537e5d Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
This commit is contained in:
parent
7aa0adf130
commit
c9266e7cb9
|
@ -210,12 +210,10 @@ defineTest(qtAddToolEnv) {
|
||||||
defineTest(qtAddTargetEnv) {
|
defineTest(qtAddTargetEnv) {
|
||||||
deps = $$resolve_depends(QT, "QT.")
|
deps = $$resolve_depends(QT, "QT.")
|
||||||
!isEmpty(deps) {
|
!isEmpty(deps) {
|
||||||
plugin_paths =
|
|
||||||
for(dep, deps) {
|
for(dep, deps) {
|
||||||
deppath += $$shell_path($$eval(QT.$${dep}.libs))
|
deppath += $$shell_path($$eval(QT.$${dep}.libs))
|
||||||
for(rpath, QT.$${dep}.rpath_link): \
|
for(rpath, QT.$${dep}.rpath_link): \
|
||||||
deppath += $$shell_path($$rpath)
|
deppath += $$shell_path($$rpath)
|
||||||
plugin_paths += $$eval(QT.$${dep}.plugin_path) $$eval(QT.$${dep}.plugins)
|
|
||||||
}
|
}
|
||||||
equals(QMAKE_HOST.os, Windows): \
|
equals(QMAKE_HOST.os, Windows): \
|
||||||
deppath.name = PATH
|
deppath.name = PATH
|
||||||
|
@ -227,12 +225,14 @@ defineTest(qtAddTargetEnv) {
|
||||||
error("Operating system not supported.")
|
error("Operating system not supported.")
|
||||||
deppath.value = $$unique(deppath)
|
deppath.value = $$unique(deppath)
|
||||||
deppath.CONFIG = prepend
|
deppath.CONFIG = prepend
|
||||||
pluginpath.name = QT_PLUGIN_PATH
|
|
||||||
pluginpath.value =
|
pluginpath.value =
|
||||||
plugin_paths = $$unique(plugin_paths)
|
for(qmod, QMAKEMODULES) {
|
||||||
for(ppath, plugin_paths): \
|
qmod = $$section(qmod, /, 0, -3)/plugins
|
||||||
exists($$ppath): \
|
exists($$qmod): pluginpath.value += $$shell_path($$qmod)
|
||||||
pluginpath.value += $$shell_path($$ppath)
|
}
|
||||||
|
pluginpath.name = QT_PLUGIN_PATH
|
||||||
|
|
||||||
QT_TOOL_ENV += deppath pluginpath
|
QT_TOOL_ENV += deppath pluginpath
|
||||||
}
|
}
|
||||||
qtAddToolEnv($$1, $$QT_TOOL_ENV)
|
qtAddToolEnv($$1, $$QT_TOOL_ENV)
|
||||||
|
|
|
@ -32,11 +32,9 @@
|
||||||
privqt = $$replace(QT_PRIVATE, -private$, )
|
privqt = $$replace(QT_PRIVATE, -private$, )
|
||||||
privdep = $$resolve_depends(privqt, "QT.")
|
privdep = $$resolve_depends(privqt, "QT.")
|
||||||
rpaths =
|
rpaths =
|
||||||
pluginpath =
|
|
||||||
alldep = $$pubdep $$privdep
|
alldep = $$pubdep $$privdep
|
||||||
for(dep, alldep) { # Inherit link-rpaths from all our dependencies
|
for(dep, alldep) { # Inherit link-rpaths from all our dependencies
|
||||||
rpaths += $$eval(QT.$${dep}.rpath_link) $$eval(QT.$${dep}.rpath_link_private)
|
rpaths += $$eval(QT.$${dep}.rpath_link) $$eval(QT.$${dep}.rpath_link_private)
|
||||||
pluginpath += $$eval(QT.$${dep}.plugin_path) $$eval(QT.$${dep}.plugins)
|
|
||||||
}
|
}
|
||||||
privdep -= $$pubdep
|
privdep -= $$pubdep
|
||||||
for(dep, privdep): \ # Add our private dependencies' lib paths as new link-rpaths
|
for(dep, privdep): \ # Add our private dependencies' lib paths as new link-rpaths
|
||||||
|
@ -58,7 +56,6 @@
|
||||||
} else {
|
} else {
|
||||||
module_rpathlink_priv =
|
module_rpathlink_priv =
|
||||||
}
|
}
|
||||||
pluginpath = $$unique(pluginpath)
|
|
||||||
|
|
||||||
# Create a forwarding module .pri file
|
# Create a forwarding module .pri file
|
||||||
MODULE_FWD_PRI_CONT = \
|
MODULE_FWD_PRI_CONT = \
|
||||||
|
@ -71,7 +68,6 @@
|
||||||
$$module_rpathlink \
|
$$module_rpathlink \
|
||||||
$$module_rpathlink_priv \
|
$$module_rpathlink_priv \
|
||||||
"QT.$${MODULE}.rpath = $$MODULE_INSTALL_LIBS" \
|
"QT.$${MODULE}.rpath = $$MODULE_INSTALL_LIBS" \
|
||||||
"QT.$${MODULE}.plugin_path = $$val_escape(pluginpath)" \
|
|
||||||
"include($$MODULE_PRI)"
|
"include($$MODULE_PRI)"
|
||||||
write_file($$MODULE_FWD_PRI, MODULE_FWD_PRI_CONT)|error("Aborting.")
|
write_file($$MODULE_FWD_PRI, MODULE_FWD_PRI_CONT)|error("Aborting.")
|
||||||
touch($$MODULE_FWD_PRI, $$MODULE_PRI)
|
touch($$MODULE_FWD_PRI, $$MODULE_PRI)
|
||||||
|
|
Loading…
Reference in New Issue