The pykrita/plugin target generates two required ui header files, ui_info.h and ui_manager.h, using the ki18n_wrap_ui macro. The source files are independently used by the pykrita/kritarunner target, which however doesn't generate the required header files. This means that when built in parallel, sometimes the pykrita/kritarunner target is built before the pykrita/plugin target and compilation fails with > /build/krita-4.1.8/plugins/extensions/pykrita/plugin/pyqtpluginsettings.cpp:19:10: fatal error: ui_manager.h: No such file or directory > #include "ui_manager.h" > ^~~~~~~~~~~~~~ A full build output can be found here: https://gist.githubusercontent.com/worldofpeace/c8248ff92b0ced199124bdcfdb59420f/raw/b0b26769b6369146b6c7a110eaa3e230f81515be/krita.log When building Krita for NixOS, we're currently disabling building in parallel to avoid this, but that makes the builds extremely lengthy. This was also reported in https://bugs.kde.org/show_bug.cgi?id=407591.
So, a simple patch like this should solve that? diff --git a/plugins/extensions/pykrita/kritarunner/CMakeLists.txt b/plugins/extensions/pykrita/kritarunner/CMakeLists.txt index da3c07b8bd..0d92562c90 100644 --- a/plugins/extensions/pykrita/kritarunner/CMakeLists.txt +++ b/plugins/extensions/pykrita/kritarunner/CMakeLists.txt @@ -13,6 +13,11 @@ set(kritarunner_SRCS main.cpp ../plugin/PythonPluginsModel.cpp ) +ki18n_wrap_ui(kritarunner_SRCS + ../plugin/info.ui + ../plugin/manager.ui +) + add_executable(kritarunner ${kritarunner_SRCS}) target_include_directories(kritarunner SYSTEM PUBLIC "${PYTHON_INCLUDE_DIRS}") lines 1-16/16 (END)
That should work, but I opened a PR with a different solution at https://invent.kde.org/graphics/krita/-/merge_requests/640. I think that should be better in the long run, it should be easier to maintain and make it less likely that a similar issue occurs again (in kritarunner, that is).
Thanks! I will look at that tomorrow, and merge it if I think there are no more questions.
I've merged the request :-) See https://invent.kde.org/graphics/krita/-/commit/2464c32dbaddf71359f3b710223e3ae0337a9fc5
I'll also merge it to the stable and the release branches.
Created attachment 134634 [details] attachment-25700-0.html Okay, great! Thanks! On Thu, 2021-01-07 at 10:17 +0000, Halla Rempt wrote: > https://bugs.kde.org/show_bug.cgi?id=431226 > > --- Comment #5 from Halla Rempt <halla@valdyas.org> --- > I'll also merge it to the stable and the release branches. >
Git commit 03f5fe9cd0f485bbedd6b211eb3b1403d1a8850e by Halla Rempt. Committed on 09/01/2021 at 09:45. Pushed by rempt into branch 'master'. Enable parallel builds of pykrita/plugin and pykrita/kritarunnuer Related: bug 407591 M +5 -0 plugins/extensions/pykrita/kritarunner/CMakeLists.txt https://invent.kde.org/graphics/krita/commit/03f5fe9cd0f485bbedd6b211eb3b1403d1a8850e
Git commit e410004e7ac63d75fb1613e34b3b4ba0b3b3e1ce by Halla Rempt. Committed on 09/01/2021 at 09:45. Pushed by rempt into branch 'krita/4.3'. Enable parallel builds of pykrita/plugin and pykrita/kritarunnuer Related: bug 407591 (cherry picked from commit 03f5fe9cd0f485bbedd6b211eb3b1403d1a8850e) M +5 -0 plugins/extensions/pykrita/kritarunner/CMakeLists.txt https://invent.kde.org/graphics/krita/commit/e410004e7ac63d75fb1613e34b3b4ba0b3b3e1ce
Git commit f1aebe4ab8584b2d2f65b38ff4b837e3db17705a by Halla Rempt. Committed on 09/01/2021 at 09:46. Pushed by rempt into branch 'krita/4.4.2'. Enable parallel builds of pykrita/plugin and pykrita/kritarunnuer Related: bug 407591 (cherry picked from commit 03f5fe9cd0f485bbedd6b211eb3b1403d1a8850e) M +5 -0 plugins/extensions/pykrita/kritarunner/CMakeLists.txt https://invent.kde.org/graphics/krita/commit/f1aebe4ab8584b2d2f65b38ff4b837e3db17705a
I think you applied the wrong patch to master and the stable branches, unless you wanted to go with yours instead.
Outch... Let me fix that!
Should be fixed now...
Yeah, looks good! Thanks!