From: Daan De Meyer Date: Sat, 12 Apr 2025 17:36:48 +0000 (+0200) Subject: tree-wide: Mark linux and sys includes as system includes X-Git-Tag: v258-rc1~780^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F37112%2Fhead;p=thirdparty%2Fsystemd.git tree-wide: Mark linux and sys includes as system includes Even though these are in our tree, we should still treat them as system includes which helps various tools (clangd, iwyu, ...) understand that these are system includes and <> should be used instead of "". --- diff --git a/LICENSES/README.md b/LICENSES/README.md index 9b3325d57f0..f68c451bfbf 100644 --- a/LICENSES/README.md +++ b/LICENSES/README.md @@ -32,23 +32,23 @@ The following exceptions apply: * some sources under src/udev/ are licensed under **GPL-2.0-or-later**, so all udev programs (`systemd-udevd`, `udevadm`, and the udev builtins and test programs) are also distributed under **GPL-2.0-or-later**. - * the header files contained in src/basic/linux/ are copied + * the header files contained in src/basic/include/linux are copied verbatim from the Linux kernel source tree and are licensed under **GPL-2.0 WITH Linux-syscall-note** and are used within the scope of the Linux-syscall-note exception provisions * the following sources are licensed under the **LGPL-2.0-or-later** license: - src/basic/utf8.c - src/shared/initreq.h - * the src/basic/linux/bpf_insn.h header is copied from the Linux kernel + * the src/basic/include/linux/bpf_insn.h header is copied from the Linux kernel source tree and is licensed under either **BSD-2-Clause** or **GPL-2.0-only**, and thus is included in the systemd build under the BSD-2-Clause license. - * The src/basic/linux/wireguard.h header is copied from the Linux kernel + * The src/basic/include/linux/wireguard.h header is copied from the Linux kernel source tree and is licensed under either **MIT** or **GPL-2.0 WITH Linux-syscall-note**, and thus is included in the systemd build under the MIT license. * the following sources are licensed under the **MIT** license (in case of our scripts, to facilitate copying and reuse of those helpers to other projects): - hwdb.d/parse_hwdb.py - - src/basic/linux/batman_adv.h + - src/basic/include/linux/batman_adv.h - src/basic/sparse-endian.h - tools/catalog-report.py * the following sources are licensed under the **CC0-1.0** license: diff --git a/coccinelle/run-coccinelle.sh b/coccinelle/run-coccinelle.sh index c4bc29856d7..19ae59e4e5f 100755 --- a/coccinelle/run-coccinelle.sh +++ b/coccinelle/run-coccinelle.sh @@ -5,7 +5,7 @@ set -e # Exclude following paths from the Coccinelle transformations EXCLUDED_PATHS=( "src/boot/efi/*" - "src/basic/linux/*" + "src/basic/include/linux/*" # Symlinked to test-bus-vtable-cc.cc, which causes issues with the IN_SET macro "src/libsystemd/sd-bus/test-bus-vtable.c" "src/libsystemd/sd-journal/lookup3.c" diff --git a/meson.build b/meson.build index e90ae8f13f9..ac68609643a 100644 --- a/meson.build +++ b/meson.build @@ -2053,11 +2053,18 @@ boot_stubs = [] build_dir_include = include_directories('.') -basic_includes = include_directories( - 'src/basic', - 'src/fundamental', - 'src/systemd', - '.') +basic_includes = [ + include_directories( + 'src/basic', + 'src/fundamental', + 'src/systemd', + '.', + ), + include_directories( + 'src/basic/include', + is_system : true, + ), +] libsystemd_includes = [basic_includes, include_directories( 'src/libsystemd/sd-bus', diff --git a/src/basic/linux/auto_dev-ioctl.h b/src/basic/include/linux/auto_dev-ioctl.h similarity index 100% rename from src/basic/linux/auto_dev-ioctl.h rename to src/basic/include/linux/auto_dev-ioctl.h diff --git a/src/basic/linux/auto_fs.h b/src/basic/include/linux/auto_fs.h similarity index 100% rename from src/basic/linux/auto_fs.h rename to src/basic/include/linux/auto_fs.h diff --git a/src/basic/linux/batman_adv.h b/src/basic/include/linux/batman_adv.h similarity index 100% rename from src/basic/linux/batman_adv.h rename to src/basic/include/linux/batman_adv.h diff --git a/src/basic/linux/bpf.h b/src/basic/include/linux/bpf.h similarity index 100% rename from src/basic/linux/bpf.h rename to src/basic/include/linux/bpf.h diff --git a/src/basic/linux/bpf_common.h b/src/basic/include/linux/bpf_common.h similarity index 100% rename from src/basic/linux/bpf_common.h rename to src/basic/include/linux/bpf_common.h diff --git a/src/basic/linux/bpf_insn.h b/src/basic/include/linux/bpf_insn.h similarity index 100% rename from src/basic/linux/bpf_insn.h rename to src/basic/include/linux/bpf_insn.h diff --git a/src/basic/linux/btrfs.h b/src/basic/include/linux/btrfs.h similarity index 100% rename from src/basic/linux/btrfs.h rename to src/basic/include/linux/btrfs.h diff --git a/src/basic/linux/btrfs_tree.h b/src/basic/include/linux/btrfs_tree.h similarity index 100% rename from src/basic/linux/btrfs_tree.h rename to src/basic/include/linux/btrfs_tree.h diff --git a/src/basic/linux/can/netlink.h b/src/basic/include/linux/can/netlink.h similarity index 100% rename from src/basic/linux/can/netlink.h rename to src/basic/include/linux/can/netlink.h diff --git a/src/basic/linux/can/vxcan.h b/src/basic/include/linux/can/vxcan.h similarity index 100% rename from src/basic/linux/can/vxcan.h rename to src/basic/include/linux/can/vxcan.h diff --git a/src/basic/linux/capability.h b/src/basic/include/linux/capability.h similarity index 100% rename from src/basic/linux/capability.h rename to src/basic/include/linux/capability.h diff --git a/src/basic/linux/cfm_bridge.h b/src/basic/include/linux/cfm_bridge.h similarity index 100% rename from src/basic/linux/cfm_bridge.h rename to src/basic/include/linux/cfm_bridge.h diff --git a/src/basic/linux/const.h b/src/basic/include/linux/const.h similarity index 100% rename from src/basic/linux/const.h rename to src/basic/include/linux/const.h diff --git a/src/basic/linux/dm-ioctl.h b/src/basic/include/linux/dm-ioctl.h similarity index 100% rename from src/basic/linux/dm-ioctl.h rename to src/basic/include/linux/dm-ioctl.h diff --git a/src/basic/linux/ethtool.h b/src/basic/include/linux/ethtool.h similarity index 100% rename from src/basic/linux/ethtool.h rename to src/basic/include/linux/ethtool.h diff --git a/src/basic/linux/fib_rules.h b/src/basic/include/linux/fib_rules.h similarity index 100% rename from src/basic/linux/fib_rules.h rename to src/basic/include/linux/fib_rules.h diff --git a/src/basic/linux/filter.h b/src/basic/include/linux/filter.h similarity index 100% rename from src/basic/linux/filter.h rename to src/basic/include/linux/filter.h diff --git a/src/basic/linux/fou.h b/src/basic/include/linux/fou.h similarity index 100% rename from src/basic/linux/fou.h rename to src/basic/include/linux/fou.h diff --git a/src/basic/linux/fs.h b/src/basic/include/linux/fs.h similarity index 100% rename from src/basic/linux/fs.h rename to src/basic/include/linux/fs.h diff --git a/src/basic/linux/fscrypt.h b/src/basic/include/linux/fscrypt.h similarity index 100% rename from src/basic/linux/fscrypt.h rename to src/basic/include/linux/fscrypt.h diff --git a/src/basic/linux/genetlink.h b/src/basic/include/linux/genetlink.h similarity index 100% rename from src/basic/linux/genetlink.h rename to src/basic/include/linux/genetlink.h diff --git a/src/basic/linux/hdlc/ioctl.h b/src/basic/include/linux/hdlc/ioctl.h similarity index 100% rename from src/basic/linux/hdlc/ioctl.h rename to src/basic/include/linux/hdlc/ioctl.h diff --git a/src/basic/linux/hid.h b/src/basic/include/linux/hid.h similarity index 100% rename from src/basic/linux/hid.h rename to src/basic/include/linux/hid.h diff --git a/src/basic/linux/hidraw.h b/src/basic/include/linux/hidraw.h similarity index 100% rename from src/basic/linux/hidraw.h rename to src/basic/include/linux/hidraw.h diff --git a/src/basic/linux/if.h b/src/basic/include/linux/if.h similarity index 100% rename from src/basic/linux/if.h rename to src/basic/include/linux/if.h diff --git a/src/basic/linux/if_addr.h b/src/basic/include/linux/if_addr.h similarity index 100% rename from src/basic/linux/if_addr.h rename to src/basic/include/linux/if_addr.h diff --git a/src/basic/linux/if_addrlabel.h b/src/basic/include/linux/if_addrlabel.h similarity index 100% rename from src/basic/linux/if_addrlabel.h rename to src/basic/include/linux/if_addrlabel.h diff --git a/src/basic/linux/if_arp.h b/src/basic/include/linux/if_arp.h similarity index 100% rename from src/basic/linux/if_arp.h rename to src/basic/include/linux/if_arp.h diff --git a/src/basic/linux/if_bonding.h b/src/basic/include/linux/if_bonding.h similarity index 100% rename from src/basic/linux/if_bonding.h rename to src/basic/include/linux/if_bonding.h diff --git a/src/basic/linux/if_bridge.h b/src/basic/include/linux/if_bridge.h similarity index 100% rename from src/basic/linux/if_bridge.h rename to src/basic/include/linux/if_bridge.h diff --git a/src/basic/linux/if_ether.h b/src/basic/include/linux/if_ether.h similarity index 100% rename from src/basic/linux/if_ether.h rename to src/basic/include/linux/if_ether.h diff --git a/src/basic/linux/if_infiniband.h b/src/basic/include/linux/if_infiniband.h similarity index 100% rename from src/basic/linux/if_infiniband.h rename to src/basic/include/linux/if_infiniband.h diff --git a/src/basic/linux/if_link.h b/src/basic/include/linux/if_link.h similarity index 100% rename from src/basic/linux/if_link.h rename to src/basic/include/linux/if_link.h diff --git a/src/basic/linux/if_macsec.h b/src/basic/include/linux/if_macsec.h similarity index 100% rename from src/basic/linux/if_macsec.h rename to src/basic/include/linux/if_macsec.h diff --git a/src/basic/linux/if_packet.h b/src/basic/include/linux/if_packet.h similarity index 100% rename from src/basic/linux/if_packet.h rename to src/basic/include/linux/if_packet.h diff --git a/src/basic/linux/if_tun.h b/src/basic/include/linux/if_tun.h similarity index 100% rename from src/basic/linux/if_tun.h rename to src/basic/include/linux/if_tun.h diff --git a/src/basic/linux/if_tunnel.h b/src/basic/include/linux/if_tunnel.h similarity index 100% rename from src/basic/linux/if_tunnel.h rename to src/basic/include/linux/if_tunnel.h diff --git a/src/basic/linux/if_vlan.h b/src/basic/include/linux/if_vlan.h similarity index 100% rename from src/basic/linux/if_vlan.h rename to src/basic/include/linux/if_vlan.h diff --git a/src/basic/linux/in.h b/src/basic/include/linux/in.h similarity index 100% rename from src/basic/linux/in.h rename to src/basic/include/linux/in.h diff --git a/src/basic/linux/in6.h b/src/basic/include/linux/in6.h similarity index 100% rename from src/basic/linux/in6.h rename to src/basic/include/linux/in6.h diff --git a/src/basic/linux/input-event-codes.h b/src/basic/include/linux/input-event-codes.h similarity index 100% rename from src/basic/linux/input-event-codes.h rename to src/basic/include/linux/input-event-codes.h diff --git a/src/basic/linux/input.h b/src/basic/include/linux/input.h similarity index 100% rename from src/basic/linux/input.h rename to src/basic/include/linux/input.h diff --git a/src/basic/linux/ioprio.h b/src/basic/include/linux/ioprio.h similarity index 100% rename from src/basic/linux/ioprio.h rename to src/basic/include/linux/ioprio.h diff --git a/src/basic/linux/ip.h b/src/basic/include/linux/ip.h similarity index 100% rename from src/basic/linux/ip.h rename to src/basic/include/linux/ip.h diff --git a/src/basic/linux/ip6_tunnel.h b/src/basic/include/linux/ip6_tunnel.h similarity index 100% rename from src/basic/linux/ip6_tunnel.h rename to src/basic/include/linux/ip6_tunnel.h diff --git a/src/basic/linux/ipv6.h b/src/basic/include/linux/ipv6.h similarity index 100% rename from src/basic/linux/ipv6.h rename to src/basic/include/linux/ipv6.h diff --git a/src/basic/linux/ipv6_route.h b/src/basic/include/linux/ipv6_route.h similarity index 100% rename from src/basic/linux/ipv6_route.h rename to src/basic/include/linux/ipv6_route.h diff --git a/src/basic/linux/keyctl.h b/src/basic/include/linux/keyctl.h similarity index 100% rename from src/basic/linux/keyctl.h rename to src/basic/include/linux/keyctl.h diff --git a/src/basic/linux/l2tp.h b/src/basic/include/linux/l2tp.h similarity index 100% rename from src/basic/linux/l2tp.h rename to src/basic/include/linux/l2tp.h diff --git a/src/basic/linux/libc-compat.h b/src/basic/include/linux/libc-compat.h similarity index 100% rename from src/basic/linux/libc-compat.h rename to src/basic/include/linux/libc-compat.h diff --git a/src/basic/linux/limits.h b/src/basic/include/linux/limits.h similarity index 100% rename from src/basic/linux/limits.h rename to src/basic/include/linux/limits.h diff --git a/src/basic/linux/loop.h b/src/basic/include/linux/loop.h similarity index 100% rename from src/basic/linux/loop.h rename to src/basic/include/linux/loop.h diff --git a/src/basic/linux/magic.h b/src/basic/include/linux/magic.h similarity index 100% rename from src/basic/linux/magic.h rename to src/basic/include/linux/magic.h diff --git a/src/basic/linux/mount.h b/src/basic/include/linux/mount.h similarity index 100% rename from src/basic/linux/mount.h rename to src/basic/include/linux/mount.h diff --git a/src/basic/linux/mrp_bridge.h b/src/basic/include/linux/mrp_bridge.h similarity index 100% rename from src/basic/linux/mrp_bridge.h rename to src/basic/include/linux/mrp_bridge.h diff --git a/src/basic/linux/neighbour.h b/src/basic/include/linux/neighbour.h similarity index 100% rename from src/basic/linux/neighbour.h rename to src/basic/include/linux/neighbour.h diff --git a/src/basic/linux/net_namespace.h b/src/basic/include/linux/net_namespace.h similarity index 100% rename from src/basic/linux/net_namespace.h rename to src/basic/include/linux/net_namespace.h diff --git a/src/basic/linux/netdevice.h b/src/basic/include/linux/netdevice.h similarity index 100% rename from src/basic/linux/netdevice.h rename to src/basic/include/linux/netdevice.h diff --git a/src/basic/linux/netfilter.h b/src/basic/include/linux/netfilter.h similarity index 100% rename from src/basic/linux/netfilter.h rename to src/basic/include/linux/netfilter.h diff --git a/src/basic/linux/netfilter/nf_conntrack_common.h b/src/basic/include/linux/netfilter/nf_conntrack_common.h similarity index 100% rename from src/basic/linux/netfilter/nf_conntrack_common.h rename to src/basic/include/linux/netfilter/nf_conntrack_common.h diff --git a/src/basic/linux/netfilter/nf_conntrack_tuple_common.h b/src/basic/include/linux/netfilter/nf_conntrack_tuple_common.h similarity index 100% rename from src/basic/linux/netfilter/nf_conntrack_tuple_common.h rename to src/basic/include/linux/netfilter/nf_conntrack_tuple_common.h diff --git a/src/basic/linux/netfilter/nf_nat.h b/src/basic/include/linux/netfilter/nf_nat.h similarity index 100% rename from src/basic/linux/netfilter/nf_nat.h rename to src/basic/include/linux/netfilter/nf_nat.h diff --git a/src/basic/linux/netfilter/nf_tables.h b/src/basic/include/linux/netfilter/nf_tables.h similarity index 100% rename from src/basic/linux/netfilter/nf_tables.h rename to src/basic/include/linux/netfilter/nf_tables.h diff --git a/src/basic/linux/netfilter/nfnetlink.h b/src/basic/include/linux/netfilter/nfnetlink.h similarity index 100% rename from src/basic/linux/netfilter/nfnetlink.h rename to src/basic/include/linux/netfilter/nfnetlink.h diff --git a/src/basic/linux/netfilter/nfnetlink_compat.h b/src/basic/include/linux/netfilter/nfnetlink_compat.h similarity index 100% rename from src/basic/linux/netfilter/nfnetlink_compat.h rename to src/basic/include/linux/netfilter/nfnetlink_compat.h diff --git a/src/basic/linux/netfilter/x_tables.h b/src/basic/include/linux/netfilter/x_tables.h similarity index 100% rename from src/basic/linux/netfilter/x_tables.h rename to src/basic/include/linux/netfilter/x_tables.h diff --git a/src/basic/linux/netfilter/xt_addrtype.h b/src/basic/include/linux/netfilter/xt_addrtype.h similarity index 100% rename from src/basic/linux/netfilter/xt_addrtype.h rename to src/basic/include/linux/netfilter/xt_addrtype.h diff --git a/src/basic/linux/netfilter/xt_tcpudp.h b/src/basic/include/linux/netfilter/xt_tcpudp.h similarity index 100% rename from src/basic/linux/netfilter/xt_tcpudp.h rename to src/basic/include/linux/netfilter/xt_tcpudp.h diff --git a/src/basic/linux/netfilter_ipv4.h b/src/basic/include/linux/netfilter_ipv4.h similarity index 100% rename from src/basic/linux/netfilter_ipv4.h rename to src/basic/include/linux/netfilter_ipv4.h diff --git a/src/basic/linux/netfilter_ipv4/ip_tables.h b/src/basic/include/linux/netfilter_ipv4/ip_tables.h similarity index 100% rename from src/basic/linux/netfilter_ipv4/ip_tables.h rename to src/basic/include/linux/netfilter_ipv4/ip_tables.h diff --git a/src/basic/linux/netlink.h b/src/basic/include/linux/netlink.h similarity index 100% rename from src/basic/linux/netlink.h rename to src/basic/include/linux/netlink.h diff --git a/src/basic/linux/nexthop.h b/src/basic/include/linux/nexthop.h similarity index 100% rename from src/basic/linux/nexthop.h rename to src/basic/include/linux/nexthop.h diff --git a/src/basic/linux/nl80211.h b/src/basic/include/linux/nl80211.h similarity index 100% rename from src/basic/linux/nl80211.h rename to src/basic/include/linux/nl80211.h diff --git a/src/basic/linux/pkt_sched.h b/src/basic/include/linux/pkt_sched.h similarity index 100% rename from src/basic/linux/pkt_sched.h rename to src/basic/include/linux/pkt_sched.h diff --git a/src/basic/linux/prctl.h b/src/basic/include/linux/prctl.h similarity index 100% rename from src/basic/linux/prctl.h rename to src/basic/include/linux/prctl.h diff --git a/src/basic/linux/rtnetlink.h b/src/basic/include/linux/rtnetlink.h similarity index 100% rename from src/basic/linux/rtnetlink.h rename to src/basic/include/linux/rtnetlink.h diff --git a/src/basic/linux/socket.h b/src/basic/include/linux/socket.h similarity index 100% rename from src/basic/linux/socket.h rename to src/basic/include/linux/socket.h diff --git a/src/basic/linux/sockios.h b/src/basic/include/linux/sockios.h similarity index 100% rename from src/basic/linux/sockios.h rename to src/basic/include/linux/sockios.h diff --git a/src/basic/linux/stat.h b/src/basic/include/linux/stat.h similarity index 100% rename from src/basic/linux/stat.h rename to src/basic/include/linux/stat.h diff --git a/src/basic/linux/stddef.h b/src/basic/include/linux/stddef.h similarity index 100% rename from src/basic/linux/stddef.h rename to src/basic/include/linux/stddef.h diff --git a/src/basic/linux/update.sh b/src/basic/include/linux/update.sh similarity index 100% rename from src/basic/linux/update.sh rename to src/basic/include/linux/update.sh diff --git a/src/basic/linux/veth.h b/src/basic/include/linux/veth.h similarity index 100% rename from src/basic/linux/veth.h rename to src/basic/include/linux/veth.h diff --git a/src/basic/linux/vm_sockets.h b/src/basic/include/linux/vm_sockets.h similarity index 100% rename from src/basic/linux/vm_sockets.h rename to src/basic/include/linux/vm_sockets.h diff --git a/src/basic/linux/wireguard.h b/src/basic/include/linux/wireguard.h similarity index 100% rename from src/basic/linux/wireguard.h rename to src/basic/include/linux/wireguard.h diff --git a/src/basic/sys/mount.h b/src/basic/include/sys/mount.h similarity index 100% rename from src/basic/sys/mount.h rename to src/basic/include/sys/mount.h diff --git a/src/basic/meson.build b/src/basic/meson.build index 9db77a95a64..3396e395dec 100644 --- a/src/basic/meson.build +++ b/src/basic/meson.build @@ -133,14 +133,14 @@ generate_arphrd_list = find_program('generate-arphrd-list.sh') arphrd_list_txt = custom_target( 'arphrd-list.txt', output : 'arphrd-list.txt', - command : [generate_arphrd_list, cpp, files('linux/if_arp.h'), config_h], + command : [generate_arphrd_list, cpp, files('include/linux/if_arp.h'), config_h], capture : true) generate_cap_list = find_program('generate-cap-list.sh') cap_list_txt = custom_target( 'cap-list.txt', output : 'cap-list.txt', - command : [generate_cap_list, cpp, files('linux/capability.h')], + command : [generate_cap_list, cpp, files('include/linux/capability.h')], capture : true) generate_errno_list = find_program('generate-errno-list.sh') @@ -238,7 +238,7 @@ run_target( ############################################################ filesystem_includes = files( - 'linux/magic.h', + 'include/linux/magic.h', 'missing_magic.h', ) diff --git a/src/shared/meson.build b/src/shared/meson.build index 9403d33cd6a..88e3f86d263 100644 --- a/src/shared/meson.build +++ b/src/shared/meson.build @@ -307,7 +307,7 @@ shared_sources += shared_generated_gperf_headers fname = 'ethtool-link-mode.h' ethtool_link_mode_h = custom_target( fname, - input : ['ethtool-link-mode.py', '../basic/linux/ethtool.h'], + input : ['ethtool-link-mode.py', '../basic/include/linux/ethtool.h'], output : fname, command : [python, '@INPUT0@', '--header', cpp, '@INPUT1@'], capture : true) @@ -316,7 +316,7 @@ shared_sources += ethtool_link_mode_h fname = 'ethtool-link-mode.xml' ethtool_link_mode_xml = custom_target( fname, - input : ['ethtool-link-mode.py', '../basic/linux/ethtool.h'], + input : ['ethtool-link-mode.py', '../basic/include/linux/ethtool.h'], output : fname, command : [python, '@INPUT0@', '--xml', cpp, '@INPUT1@'], capture : true) diff --git a/src/udev/meson.build b/src/udev/meson.build index 9b2615173a8..06fe5620771 100644 --- a/src/udev/meson.build +++ b/src/udev/meson.build @@ -65,7 +65,7 @@ endif generate_keyboard_keys_list = find_program('generate-keyboard-keys-list.sh') keyboard_keys_list_txt = custom_target( 'keyboard-keys-list.txt', - input : files('../basic/linux/input.h'), + input : files('../basic/include/linux/input.h'), output : 'keyboard-keys-list.txt', command : [generate_keyboard_keys_list, cpp, '@INPUT@'], capture : true)