fix: resolve qtdeclarative sysroot propagation failures

Three build failures (qt6-sensors, sddm, kwin) all trace to
qtdeclarative's sysroot/ directory being missing after staging.
CMake config files reference absolute paths into that sysroot.

1. qt-sysroot.sh: add mkdir -p before ln -sf in
   redbear_qt_ensure_dep_sysroots() so the parent directory is
   created when the dependency sysroot was cleaned up.

2. sddm wayland-patch.sh: fix sed pattern to include LinguistTools
   token that exists in the actual upstream CMakeLists.txt line.
   Without it the sed silently fails to match, leaving
   LinguistTools/Test/QuickTest as REQUIRED components.

3. qt6-sensors recipe.toml: source qt-sysroot.sh and call
   redbear_qt_ensure_dep_sysroots() before cmake configure.
   Previously the recipe only symlinked plugins/mkspecs/metatypes/
   modules but never fixed up dependency sysroot paths, causing
   Qt6::Qml INTERFACE_INCLUDE_DIRECTORIES to reference a
   non-existent include path.
This commit is contained in:
2026-06-30 23:59:46 +03:00
parent 68b1f74dbf
commit b8b348b11e
3 changed files with 5 additions and 6 deletions
+1
View File
@@ -155,6 +155,7 @@ redbear_qt_ensure_dep_sysroots() {
if [ -L "${dep_sysroot}/lib" ] || [ -e "${dep_sysroot}/lib" ]; then
rm -rf "${dep_sysroot}/lib"
fi
mkdir -p "${dep_sysroot}"
ln -sf "${sysroot}/usr/include" "${dep_sysroot}/include"
ln -sf "${sysroot}/usr/lib" "${dep_sysroot}/lib"
fi