fix: standardize Qt and KDE sysroot helper usage

This commit is contained in:
2026-05-02 22:10:22 +01:00
parent 9371fe7e76
commit 1908d8e643
33 changed files with 226 additions and 261 deletions
+11 -26
View File
@@ -13,6 +13,8 @@ dependencies = [
script = """
DYNAMIC_INIT
source "${COOKBOOK_ROOT}/local/scripts/lib/qt-sysroot.sh"
HOST_BUILD="${COOKBOOK_ROOT}/build/qt-host-build"
# Sysroot path fix: the cookbook only symlinks sysroot/{bin,include,lib,share} -> usr/
@@ -79,32 +81,15 @@ if [ -d "${COOKBOOK_STAGE}/usr/plugins" ]; then
fi
BUILD_DIR="${COOKBOOK_BUILD}"
if [ -d "${COOKBOOK_STAGE}/usr/lib/cmake" ]; then
find "${COOKBOOK_STAGE}/usr/lib/cmake" -name '*.cmake' -exec sed -i \
"s|${BUILD_DIR}|/usr|g" {} + 2>/dev/null || true
fi
STAGE_USR="${COOKBOOK_STAGE}/usr"
STAGE_CMAKE_DIR="${STAGE_USR}/lib/cmake"
SYSROOT="${COOKBOOK_SYSROOT}"
if [ -d "${COOKBOOK_STAGE}/usr/lib/cmake" ]; then
find "${COOKBOOK_STAGE}/usr/lib/cmake" -name '*.cmake' -exec sed -i \
"s|/usr/include|${SYSROOT}/include|g" {} + 2>/dev/null || true
fi
if [ -d "${COOKBOOK_STAGE}/usr/include" ]; then
mkdir -p "${SYSROOT}/include"
cp -a "${COOKBOOK_STAGE}/usr/include/"* "${SYSROOT}/include/" 2>/dev/null || true
fi
if [ -d "${COOKBOOK_STAGE}/usr/lib/cmake" ]; then
mkdir -p "${SYSROOT}/lib/cmake"
cp -a "${COOKBOOK_STAGE}/usr/lib/cmake/Qt6"* "${SYSROOT}/lib/cmake/" 2>/dev/null || true
fi
mkdir -p "${SYSROOT}/lib"
cp -a "${COOKBOOK_STAGE}/usr/lib/libQt6"* "${SYSROOT}/lib/" 2>/dev/null || true
if [ -d "${COOKBOOK_STAGE}/usr/plugins" ]; then
mkdir -p "${SYSROOT}/plugins"
cp -a "${COOKBOOK_STAGE}/usr/plugins/"* "${SYSROOT}/plugins/" 2>/dev/null || true
fi
if [ -d "${COOKBOOK_STAGE}/usr/qml" ]; then
mkdir -p "${SYSROOT}/qml"
cp -a "${COOKBOOK_STAGE}/usr/qml/"* "${SYSROOT}/qml/" 2>/dev/null || true
if [ -d "${STAGE_CMAKE_DIR}" ]; then
redbear_qt_rewrite_stage_build_paths "${STAGE_USR}" "${BUILD_DIR}"
redbear_qt_rewrite_stage_include_paths "${STAGE_CMAKE_DIR}" "${SYSROOT}"
redbear_qt_copy_stage_qt6_cmake_to_sysroot "${STAGE_USR}" "${SYSROOT}"
fi
redbear_qt_copy_common_stage_to_sysroot "${STAGE_USR}" "${SYSROOT}"
redbear_qt_copy_optional_stage_dir_to_sysroot "${STAGE_USR}" "${SYSROOT}" plugins
redbear_qt_copy_optional_stage_dir_to_sysroot "${STAGE_USR}" "${SYSROOT}" qml
"""