From b8ee7c2206f1fb00a10b6185af3882c342f8b9f5 Mon Sep 17 00:00:00 2001 From: Daan De Meyer Date: Fri, 17 Oct 2025 10:49:53 +0200 Subject: [PATCH] tree-wide: Various forward header cleanups - Make sure forward headers have the iwyu pragma to always keep them - Make sure we always include the daemon specific forward header instead of shared-forward.h - Remove shared-forward.h include where the daemon specific forward header is already included --- src/core/audit-fd.h | 2 +- src/core/clock-warp.h | 2 +- src/core/core-forward.h | 2 ++ src/core/crash-handler.h | 2 +- src/core/kill.h | 2 +- src/core/main.h | 2 +- src/core/manager.h | 2 +- src/core/selinux-setup.h | 2 +- src/core/show-status.h | 2 +- src/core/smack-setup.h | 2 +- src/core/unit-dependency-atom.h | 2 +- src/core/varlink-cgroup.h | 2 +- src/core/varlink-common.h | 2 +- src/core/varlink-dynamic-user.h | 2 +- src/core/varlink-manager.h | 2 +- src/core/varlink-unit.h | 2 +- src/home/homed-forward.h | 2 ++ src/home/homed-home.h | 1 - src/home/homework-forward.h | 2 ++ src/journal/journald-forward.h | 2 ++ src/libsystemd/sd-bus/bus-forward.h | 4 +++- src/login/logind-forward.h | 2 ++ src/login/logind-user.h | 1 - src/machine/machine-forward.h | 2 ++ src/network/networkd-address.h | 1 - src/network/networkd-bridge-fdb.h | 1 - src/network/networkd-forward.h | 2 ++ src/network/networkd-link.h | 1 - src/portable/portabled-forward.h | 2 ++ src/resolve/resolved-dns-scope.h | 1 - src/resolve/resolved-dns-server.h | 1 - src/resolve/resolved-dns-stream.h | 1 - src/resolve/resolved-dnssd-bus.h | 2 +- src/resolve/resolved-forward.h | 2 ++ src/resolve/resolved-manager.h | 1 - src/sysupdate/sysupdate-forward.h | 2 ++ src/timesync/timesyncd-forward.h | 2 ++ src/udev/udev-builtin.h | 2 +- src/udev/udev-error.h | 2 +- src/udev/udev-forward.h | 2 ++ src/udev/udev-manager.h | 1 - src/udev/udev-node.h | 2 +- src/udev/udev-trace.h | 2 +- 43 files changed, 47 insertions(+), 31 deletions(-) diff --git a/src/core/audit-fd.h b/src/core/audit-fd.h index 4f02bdfdd09..f98f4e907dd 100644 --- a/src/core/audit-fd.h +++ b/src/core/audit-fd.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" int get_core_audit_fd(void); void close_core_audit_fd(void); diff --git a/src/core/clock-warp.h b/src/core/clock-warp.h index 1c6011b3d57..771fefd2890 100644 --- a/src/core/clock-warp.h +++ b/src/core/clock-warp.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" int clock_reset_timewarp(void); void clock_apply_epoch(bool allow_backwards); diff --git a/src/core/core-forward.h b/src/core/core-forward.h index a82a12bc08c..446cf501e43 100644 --- a/src/core/core-forward.h +++ b/src/core/core-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "conf-parser-forward.h" /* IWYU pragma: export */ #include "shared-forward.h" /* IWYU pragma: export */ #include "unit-def.h" /* IWYU pragma: export */ diff --git a/src/core/crash-handler.h b/src/core/crash-handler.h index 379f3050b13..b00991ae073 100644 --- a/src/core/crash-handler.h +++ b/src/core/crash-handler.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" typedef enum CrashAction { CRASH_FREEZE, diff --git a/src/core/kill.h b/src/core/kill.h index 4bb88c9bd95..ac1163737f5 100644 --- a/src/core/kill.h +++ b/src/core/kill.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" typedef enum KillMode { /* The kill mode is a property of a unit. */ diff --git a/src/core/main.h b/src/core/main.h index f892b13f025..9ad53884134 100644 --- a/src/core/main.h +++ b/src/core/main.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" #include "crash-handler.h" extern bool arg_dump_core; diff --git a/src/core/manager.h b/src/core/manager.h index d57912f6bdc..00f3becd63c 100644 --- a/src/core/manager.h +++ b/src/core/manager.h @@ -6,7 +6,7 @@ #include "cgroup.h" #include "common-signal.h" #include "execute.h" -#include "shared-forward.h" +#include "core-forward.h" #include "log.h" #include "path-lookup.h" #include "show-status.h" diff --git a/src/core/selinux-setup.h b/src/core/selinux-setup.h index 2caa75ff739..3dad97bbf69 100644 --- a/src/core/selinux-setup.h +++ b/src/core/selinux-setup.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" int mac_selinux_setup(bool *loaded_policy); diff --git a/src/core/show-status.h b/src/core/show-status.h index 9625426fa19..cc58a191f72 100644 --- a/src/core/show-status.h +++ b/src/core/show-status.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" /* Manager status */ diff --git a/src/core/smack-setup.h b/src/core/smack-setup.h index df64d585475..1e77018aa84 100644 --- a/src/core/smack-setup.h +++ b/src/core/smack-setup.h @@ -7,6 +7,6 @@ Nathaniel Chen ***/ -#include "shared-forward.h" +#include "core-forward.h" int mac_smack_setup(bool *loaded_policy); diff --git a/src/core/unit-dependency-atom.h b/src/core/unit-dependency-atom.h index c0ad3db513e..38f7532281b 100644 --- a/src/core/unit-dependency-atom.h +++ b/src/core/unit-dependency-atom.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" /* Flags that identify the various "atomic" behaviours a specific dependency type implies. Each dependency is * a combination of one or more of these flags that define what they actually entail. */ diff --git a/src/core/varlink-cgroup.h b/src/core/varlink-cgroup.h index 8e5f2363c33..13e24417d62 100644 --- a/src/core/varlink-cgroup.h +++ b/src/core/varlink-cgroup.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" int unit_cgroup_context_build_json(sd_json_variant **ret, const char *name, void *userdata); int unit_cgroup_runtime_build_json(sd_json_variant **ret, const char *name, void *userdata); diff --git a/src/core/varlink-common.h b/src/core/varlink-common.h index 24e21e7b0b8..5918f9ac68f 100644 --- a/src/core/varlink-common.h +++ b/src/core/varlink-common.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" int rlimit_build_json(sd_json_variant **ret, const char *name, void *userdata); int rlimit_table_build_json(sd_json_variant **ret, const char *name, void *userdata); diff --git a/src/core/varlink-dynamic-user.h b/src/core/varlink-dynamic-user.h index 14bcf3191fa..6089d3b559a 100644 --- a/src/core/varlink-dynamic-user.h +++ b/src/core/varlink-dynamic-user.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" int vl_method_get_user_record(sd_varlink *link, sd_json_variant *parameters, sd_varlink_method_flags_t flags, void *userdata); int vl_method_get_group_record(sd_varlink *link, sd_json_variant *parameters, sd_varlink_method_flags_t flags, void *userdata); diff --git a/src/core/varlink-manager.h b/src/core/varlink-manager.h index 5836d5443a5..fde4b613768 100644 --- a/src/core/varlink-manager.h +++ b/src/core/varlink-manager.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" int vl_method_describe_manager(sd_varlink *link, sd_json_variant *parameters, sd_varlink_method_flags_t flags, void *userdata); diff --git a/src/core/varlink-unit.h b/src/core/varlink-unit.h index 431f1f832e4..4b5e7aa52ab 100644 --- a/src/core/varlink-unit.h +++ b/src/core/varlink-unit.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" +#include "core-forward.h" #define VARLINK_ERROR_UNIT_NO_SUCH_UNIT "io.systemd.Unit.NoSuchUnit" diff --git a/src/home/homed-forward.h b/src/home/homed-forward.h index 18a8df8e61b..995d87eaa5e 100644 --- a/src/home/homed-forward.h +++ b/src/home/homed-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "conf-parser-forward.h" /* IWYU pragma: export */ #include "shared-forward.h" /* IWYU pragma: export */ diff --git a/src/home/homed-home.h b/src/home/homed-home.h index 0692e560898..93f38d86d62 100644 --- a/src/home/homed-home.h +++ b/src/home/homed-home.h @@ -1,7 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" #include "homed-forward.h" #include "pidref.h" #include "stat-util.h" diff --git a/src/home/homework-forward.h b/src/home/homework-forward.h index 04fefe6d45a..3c09338eef9 100644 --- a/src/home/homework-forward.h +++ b/src/home/homework-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "shared-forward.h" /* IWYU pragma: export */ typedef enum HomeSetupFlags HomeSetupFlags; diff --git a/src/journal/journald-forward.h b/src/journal/journald-forward.h index 141b98024f5..66bcc40d3ae 100644 --- a/src/journal/journald-forward.h +++ b/src/journal/journald-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "conf-parser-forward.h" /* IWYU pragma: export */ #include "shared-forward.h" /* IWYU pragma: export */ diff --git a/src/libsystemd/sd-bus/bus-forward.h b/src/libsystemd/sd-bus/bus-forward.h index 7208e89c1b6..65f8d6515aa 100644 --- a/src/libsystemd/sd-bus/bus-forward.h +++ b/src/libsystemd/sd-bus/bus-forward.h @@ -1,7 +1,9 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "sd-forward.h" +/* IWYU pragma: always_keep */ + +#include "sd-forward.h" /* IWYU pragma: export */ typedef enum BusAuth BusAuth; typedef enum BusSlotType BusSlotType; diff --git a/src/login/logind-forward.h b/src/login/logind-forward.h index e9b9ebce376..8f1fe4acee3 100644 --- a/src/login/logind-forward.h +++ b/src/login/logind-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "conf-parser-forward.h" /* IWYU pragma: export */ #include "shared-forward.h" /* IWYU pragma: export */ diff --git a/src/login/logind-user.h b/src/login/logind-user.h index d3773996fa5..413cfb3f8e3 100644 --- a/src/login/logind-user.h +++ b/src/login/logind-user.h @@ -1,7 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" #include "list.h" #include "logind-forward.h" #include "time-util.h" diff --git a/src/machine/machine-forward.h b/src/machine/machine-forward.h index ff7b98fc45c..5921ad87fab 100644 --- a/src/machine/machine-forward.h +++ b/src/machine/machine-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "shared-forward.h" /* IWYU pragma: export */ typedef struct Machine Machine; diff --git a/src/network/networkd-address.h b/src/network/networkd-address.h index 1304e41f8cc..1154aaf9477 100644 --- a/src/network/networkd-address.h +++ b/src/network/networkd-address.h @@ -2,7 +2,6 @@ #pragma once #include "firewall-util.h" -#include "shared-forward.h" #include "in-addr-util.h" #include "networkd-forward.h" #include "networkd-util.h" diff --git a/src/network/networkd-bridge-fdb.h b/src/network/networkd-bridge-fdb.h index b53235a8eb5..a80c9d4c3f9 100644 --- a/src/network/networkd-bridge-fdb.h +++ b/src/network/networkd-bridge-fdb.h @@ -8,7 +8,6 @@ #include #include -#include "shared-forward.h" #include "in-addr-util.h" #include "networkd-forward.h" diff --git a/src/network/networkd-forward.h b/src/network/networkd-forward.h index f004fc6a47a..95bd46801e3 100644 --- a/src/network/networkd-forward.h +++ b/src/network/networkd-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "conf-parser-forward.h" /* IWYU pragma: export */ #include "shared-forward.h" /* IWYU pragma: export */ diff --git a/src/network/networkd-link.h b/src/network/networkd-link.h index 56226776002..6e936e3bb13 100644 --- a/src/network/networkd-link.h +++ b/src/network/networkd-link.h @@ -4,7 +4,6 @@ #include #include "ether-addr-util.h" -#include "shared-forward.h" #include "network-util.h" #include "networkd-bridge-vlan.h" #include "networkd-forward.h" diff --git a/src/portable/portabled-forward.h b/src/portable/portabled-forward.h index 7dc8fee9233..9792a7acd1c 100644 --- a/src/portable/portabled-forward.h +++ b/src/portable/portabled-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "shared-forward.h" /* IWYU pragma: export */ typedef struct Manager Manager; diff --git a/src/resolve/resolved-dns-scope.h b/src/resolve/resolved-dns-scope.h index c1a53650901..3ecc2183df1 100644 --- a/src/resolve/resolved-dns-scope.h +++ b/src/resolve/resolved-dns-scope.h @@ -2,7 +2,6 @@ #pragma once #include "dns-def.h" -#include "shared-forward.h" #include "list.h" #include "ratelimit.h" #include "resolve-util.h" diff --git a/src/resolve/resolved-dns-server.h b/src/resolve/resolved-dns-server.h index 0eaac003320..7dfa0eae66c 100644 --- a/src/resolve/resolved-dns-server.h +++ b/src/resolve/resolved-dns-server.h @@ -1,7 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" #include "in-addr-util.h" #include "list.h" #include "resolved-conf.h" diff --git a/src/resolve/resolved-dns-stream.h b/src/resolve/resolved-dns-stream.h index 6c932f5e847..83bbd11eab5 100644 --- a/src/resolve/resolved-dns-stream.h +++ b/src/resolve/resolved-dns-stream.h @@ -1,7 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once -#include "shared-forward.h" #include "list.h" #include "resolved-dns-packet.h" #include "resolved-dnstls.h" diff --git a/src/resolve/resolved-dnssd-bus.h b/src/resolve/resolved-dnssd-bus.h index 882e5a81b3d..df0a646fe62 100644 --- a/src/resolve/resolved-dnssd-bus.h +++ b/src/resolve/resolved-dnssd-bus.h @@ -2,7 +2,7 @@ #pragma once -#include "shared-forward.h" +#include "resolved-forward.h" extern const BusObjectImplementation dnssd_object; diff --git a/src/resolve/resolved-forward.h b/src/resolve/resolved-forward.h index 9a79734847a..8f1fb025397 100644 --- a/src/resolve/resolved-forward.h +++ b/src/resolve/resolved-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "conf-parser-forward.h" /* IWYU pragma: export */ #include "shared-forward.h" /* IWYU pragma: export */ diff --git a/src/resolve/resolved-manager.h b/src/resolve/resolved-manager.h index 47a25abd448..68e9a6e4ea2 100644 --- a/src/resolve/resolved-manager.h +++ b/src/resolve/resolved-manager.h @@ -4,7 +4,6 @@ #include #include "common-signal.h" -#include "shared-forward.h" #include "list.h" #include "resolve-util.h" #include "resolved-dns-browse-services.h" diff --git a/src/sysupdate/sysupdate-forward.h b/src/sysupdate/sysupdate-forward.h index a92de0878ab..a8659d756b2 100644 --- a/src/sysupdate/sysupdate-forward.h +++ b/src/sysupdate/sysupdate-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "shared-forward.h" /* IWYU pragma: export */ typedef struct Context Context; diff --git a/src/timesync/timesyncd-forward.h b/src/timesync/timesyncd-forward.h index 8df2e021110..1c3d68d1e5f 100644 --- a/src/timesync/timesyncd-forward.h +++ b/src/timesync/timesyncd-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "conf-parser-forward.h" /* IWYU pragma: export */ #include "shared-forward.h" /* IWYU pragma: export */ diff --git a/src/udev/udev-builtin.h b/src/udev/udev-builtin.h index 5f600d6a438..3e830c77ea2 100644 --- a/src/udev/udev-builtin.h +++ b/src/udev/udev-builtin.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0-or-later */ #pragma once -#include "shared-forward.h" +#include "udev-forward.h" #include "udev-event.h" typedef struct UdevBuiltin { diff --git a/src/udev/udev-error.h b/src/udev/udev-error.h index c1db12960b4..d1216c65e65 100644 --- a/src/udev/udev-error.h +++ b/src/udev/udev-error.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0-or-later */ #pragma once -#include "shared-forward.h" +#include "udev-forward.h" int device_add_errno(sd_device *dev, int error); int device_add_exit_status(sd_device *dev, int status); diff --git a/src/udev/udev-forward.h b/src/udev/udev-forward.h index f5e9be6a1f1..49320636927 100644 --- a/src/udev/udev-forward.h +++ b/src/udev/udev-forward.h @@ -1,6 +1,8 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once +/* IWYU pragma: always_keep */ + #include "shared-forward.h" /* IWYU pragma: export */ typedef struct UdevCtrl UdevCtrl; diff --git a/src/udev/udev-manager.h b/src/udev/udev-manager.h index 9bb93632400..9bafe24f280 100644 --- a/src/udev/udev-manager.h +++ b/src/udev/udev-manager.h @@ -3,7 +3,6 @@ #include "sd-event.h" -#include "shared-forward.h" #include "list.h" #include "udev-config.h" #include "udev-forward.h" diff --git a/src/udev/udev-node.h b/src/udev/udev-node.h index 904421c0ec3..d5c75ebd6e2 100644 --- a/src/udev/udev-node.h +++ b/src/udev/udev-node.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0-or-later */ #pragma once -#include "shared-forward.h" +#include "udev-forward.h" int udev_node_apply_permissions( sd_device *dev, diff --git a/src/udev/udev-trace.h b/src/udev/udev-trace.h index 10d1e27345f..15a2e8bd258 100644 --- a/src/udev/udev-trace.h +++ b/src/udev/udev-trace.h @@ -8,7 +8,7 @@ #include "device-private.h" #include "device-util.h" #include "errno-util.h" -#include "shared-forward.h" +#include "udev-forward.h" /* Each trace point can have different number of additional arguments. Note that when the macro is used only * additional arguments are listed in the macro invocation! -- 2.47.3