qmake: Introduce QT_HOST_LIBEXECS property
This will be used to access host tools that are installed in ${prefix}/libexec instead of ${prefix}/bin. Pick-to: 6.1 Change-Id: I36c4b5736330f8229d267a117c65d55cd5e12758 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
This commit is contained in:
parent
0ad434c2e9
commit
edd1225489
@ -56,6 +56,7 @@ function(qt_generate_qconfig_cpp)
|
||||
qt_add_string_to_qconfig_cpp("") # config.input.sysroot
|
||||
qt_add_string_to_qconfig_cpp("false") # qmake_sysrootify
|
||||
qt_add_string_to_qconfig_cpp("${INSTALL_BINDIR}")
|
||||
qt_add_string_to_qconfig_cpp("${INSTALL_LIBEXECDIR}")
|
||||
qt_add_string_to_qconfig_cpp("${INSTALL_LIBDIR}")
|
||||
qt_add_string_to_qconfig_cpp("${hostdatadir}")
|
||||
qt_add_string_to_qconfig_cpp("${QT_QMAKE_TARGET_MKSPEC}")
|
||||
|
@ -26,6 +26,7 @@ QMAKE_QT_CONFIG = $$[QT_HOST_DATA/get]/mkspecs/qconfig.pri
|
||||
QT_MODULE_INCLUDE_BASE = $$[QT_INSTALL_HEADERS]
|
||||
QT_MODULE_LIB_BASE = $$[QT_INSTALL_LIBS]
|
||||
QT_MODULE_HOST_LIB_BASE = $$[QT_HOST_LIBS]
|
||||
QT_MODULE_HOST_LIBEXEC_BASE = $$[QT_HOST_LIBEXECS]
|
||||
QT_MODULE_BIN_BASE = $$[QT_INSTALL_BINS]
|
||||
include($$mod)
|
||||
}
|
||||
@ -35,8 +36,8 @@ QMAKE_QT_CONFIG = $$[QT_HOST_DATA/get]/mkspecs/qconfig.pri
|
||||
unset(QT_MODULE_INCLUDE_BASE)
|
||||
unset(QT_MODULE_LIB_BASE)
|
||||
unset(QT_MODULE_HOST_LIB_BASE)
|
||||
unset(QT_MODULE_HOST_LIBEXEC_BASE)
|
||||
unset(QT_MODULE_BIN_BASE)
|
||||
}
|
||||
|
||||
load(qt_functions)
|
||||
|
||||
|
@ -4315,6 +4315,9 @@
|
||||
and stored in the \l{QMAKESPEC} variable during a target build
|
||||
\li QT_HOST_BINS - location of host executables
|
||||
\li QT_HOST_DATA - location of data for host executables used by qmake
|
||||
\li QT_HOST_LIBS - location of host libraries
|
||||
\li QT_HOST_LIBEXECS - location of executables required by host
|
||||
libraries at runtime
|
||||
\li QT_HOST_PREFIX - default prefix for all host paths
|
||||
\li QT_INSTALL_ARCHDATA - location of general architecture-dependent Qt
|
||||
data
|
||||
|
@ -63,6 +63,7 @@ static const struct {
|
||||
{ "QT_HOST_DATA", QLibraryInfo::HostDataPath, true, false },
|
||||
{ "QT_HOST_BINS", QLibraryInfo::HostBinariesPath, true, false },
|
||||
{ "QT_HOST_LIBS", QLibraryInfo::HostLibrariesPath, true, false },
|
||||
{ "QT_HOST_LIBEXECS", QLibraryInfo::HostLibraryExecutablesPath, true, false },
|
||||
{ "QMAKE_SPEC", QLibraryInfo::HostSpecPath, true, true },
|
||||
{ "QMAKE_XSPEC", QLibraryInfo::TargetSpecPath, true, true },
|
||||
};
|
||||
|
@ -365,8 +365,14 @@ QVersionNumber QLibraryInfo::version() noexcept
|
||||
* - add to qt_config.prf, qt_module.prf, qt_module_fwdpri.prf
|
||||
*/
|
||||
|
||||
#ifdef QT_BUILD_QMAKE
|
||||
constexpr size_t qtConfEntriesKeySize = 23;
|
||||
#else
|
||||
constexpr size_t qtConfEntriesKeySize = 19;
|
||||
#endif
|
||||
|
||||
static const struct {
|
||||
char key[19], value[13];
|
||||
char key[qtConfEntriesKeySize], value[13];
|
||||
} qtConfEntries[] = {
|
||||
{ "Prefix", "." },
|
||||
{ "Documentation", "doc" }, // should be ${Data}/doc
|
||||
@ -389,6 +395,7 @@ static const struct {
|
||||
{ "Sysroot", "" },
|
||||
{ "SysrootifyPrefix", "" },
|
||||
{ "HostBinaries", "bin" },
|
||||
{ "HostLibraryExecutables", "libexec" },
|
||||
{ "HostLibraries", "lib" },
|
||||
{ "HostData", "." },
|
||||
{ "TargetSpec", "" },
|
||||
|
@ -79,6 +79,7 @@ public:
|
||||
SysrootPath,
|
||||
SysrootifyPrefixPath,
|
||||
HostBinariesPath,
|
||||
HostLibraryExecutablesPath,
|
||||
HostLibrariesPath,
|
||||
HostDataPath,
|
||||
TargetSpecPath,
|
||||
|
Loading…
Reference in New Issue
Block a user