When building kwin autotests for guix, building the following autotests fail:
The reasons are missing dependencies in autotests/CMakeLists.txt resp. autotests/tabbox/CMakeLists.txt.
Detailed description and Analysis
guix (like nix) used a separate prefix for each package. Thus the header files for
qtdeclarative are in /gnu/store/…-qtdeclarative-5.9.1/include/qt5/ while the ones for
qtbase are in /gnu/store/…-base-5.9.1/include/qt5/. This means that *each* dependency's include directory must be specified. This is in contrast to a "normal" Unix-system, where all includes end up in /usr/include/qt5 and missing to defined some include-dependencies does often not raise an error.
When building testScriptedEffectLoader this fails with:
fatal error: QtQml/QQmlListProperty: No such file or directory
This line and the one in front read:
The included files exists in /gnu/store/…-qtdeclarative-5.9.1/include/qt5/, but the command line is missing -isystem /gnu/store/…-qtdeclarative-5.9.1/include/qt5/". The reason for this is: Qt5::Qml is not defined as a dependency for testScriptedEffectLoader` in autotests/CMakeLists.txt.
Analogous for testTabBoxClientModel and testTabBoxHandler.