From c198ff491baa6e62723dc2af3ecd5f8df2a2d593 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 11 Sep 2026 11:50:36 +0200 Subject: quickshell: fix dbusmenu build failure from leaked DBUS_INTERFACES src/dbus/CMakeLists.txt builds up DBUS_INTERFACES with its generated qt_add_dbus_interface sources, then calls add_subdirectory(dbusmenu) at the bottom. The subdirectory inherits the variable and qt_add_dbus_interface appends to it, so quickshell-dbusmenu ends up listing src/dbus's generated sources as well. Those entries are relative filenames, so make resolves them against the dbusmenu binary dir and the build dies with: No rule to make target 'src/dbus/dbus_objectmanager.cpp', needed by 'src/dbus/dbusmenu/CMakeFiles/quickshell-dbusmenu_autogen_timestamp_deps' Unset DBUS_INTERFACES before the add_subdirectory so dbusmenu starts clean. Still unfixed upstream as of master. Verified with a containerized test build: SUCCESS, lint clean. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01XLAYexNKJ4BKdyjiLiqdMz --- quickshell/quickshell.SlackBuild | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'quickshell/quickshell.SlackBuild') diff --git a/quickshell/quickshell.SlackBuild b/quickshell/quickshell.SlackBuild index 298cf9a..bd991fa 100644 --- a/quickshell/quickshell.SlackBuild +++ b/quickshell/quickshell.SlackBuild @@ -79,6 +79,13 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +# src/dbus/CMakeLists.txt leaks DBUS_INTERFACES into the dbusmenu subdirectory, +# which appends to it, so dbusmenu tries to build src/dbus's generated sources +# from its own binary dir and make fails with "No rule to make target +# 'src/dbus/dbus_objectmanager.cpp'". Clear it before add_subdirectory(). +sed -i 's/^add_subdirectory(dbusmenu)$/unset(DBUS_INTERFACES)\nadd_subdirectory(dbusmenu)/' \ + src/dbus/CMakeLists.txt + mkdir -p build cd build cmake \ -- cgit v1.2.3