mirror of
http://code.qt.io/yocto/meta-qt6.git
synced 2026-01-01 13:58:07 +00:00
sdk: resolve absolute paths in toolchain file at runtime
MinGW toolchain doesn't perform relocation during installation, so all the absolute path point to the temporary sdk paths. Use the location of the toolchain file to get the absolute paths at runtime instead instead of using external SDKPATH env for it. Change-Id: I699b2178baf5cc855a57186056341b6c6eefbbf5 Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io> Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
This commit is contained in:
parent
5cbac6cf35
commit
0ef2348d49
|
|
@ -75,6 +75,8 @@ create_qt6_sdk_files () {
|
|||
cmake_minimum_required(VERSION 3.11)
|
||||
include_guard(GLOBAL)
|
||||
|
||||
get_filename_component(SYSROOTS \${CMAKE_CURRENT_LIST_DIR}/../../../.. ABSOLUTE)
|
||||
|
||||
set(ENV{PKG_CONFIG_SYSROOT_DIR} "${SDKTARGETSYSROOT}")
|
||||
set(ENV{PKG_CONFIG_PATH} "${SDKTARGETSYSROOT}${libdir}/pkgconfig")
|
||||
|
||||
|
|
@ -123,10 +125,9 @@ if(NOT DEFINED CMAKE_INSTALL_PREFIX)
|
|||
endif()
|
||||
set(CMAKE_INSTALL_PREFIX "${prefix}" CACHE PATH "Install path prefix")
|
||||
EOF
|
||||
}
|
||||
|
||||
create_qt6_sdk_files:append:sdkmingw32() {
|
||||
sed -i -e 's|${SDKPATH}|$ENV{SDKPATH}|g' \
|
||||
# resolve absolute paths at runtime
|
||||
sed -i -e 's|${SDKPATH}/sysroots|\${SYSROOTS}|g' \
|
||||
${SDK_OUTPUT}${SDKPATHNATIVE}/usr/share/cmake/Qt6Toolchain.cmake
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -156,11 +156,13 @@ set(QT_HOST_PATH "\$ENV{OECORE_NATIVE_SYSROOT}/usr" CACHE PATH "")
|
|||
set(QT_BUILD_TOOLS_WHEN_CROSSCOMPILING "TRUE" CACHE BOOL "")
|
||||
EOF
|
||||
|
||||
sed -i ${D}${QT6_INSTALL_BINDIR}/* ${D}${QT6_INSTALL_LIBDIR}/cmake/Qt6/qt.toolchain.cmake \
|
||||
-e 's|${RECIPE_SYSROOT_NATIVE}|${SDKPATHNATIVE}|'
|
||||
RELPATH="${@os.path.relpath(d.getVar('bindir'), d.getVar('QT6_INSTALL_BINDIR'))}"
|
||||
sed -i ${D}${QT6_INSTALL_BINDIR}/* \
|
||||
-e "s|${RECIPE_SYSROOT_NATIVE}.*cmake|\$script_dir_path/$RELPATH/cmake|"
|
||||
|
||||
RELPATH=${@os.path.relpath(d.getVar('prefix') + '/share/cmake/Qt6Toolchain.cmake', d.getVar('QT6_INSTALL_LIBDIR') + '/cmake/Qt6')}
|
||||
sed -i ${D}${QT6_INSTALL_LIBDIR}/cmake/Qt6/qt.toolchain.cmake \
|
||||
-e 's|${RECIPE_SYSROOT_NATIVE}|\${CMAKE_CURRENT_LIST_DIR}/../../../..|' \
|
||||
-e "s|/.*/toolchain.cmake|\${CMAKE_CURRENT_LIST_DIR}/$RELPATH|"
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user