# SPDX-License-Identifier: LGPL-2.1+
project('systemd', 'c',
- version : '241',
+ version : '242',
license : 'LGPLv2+',
default_options: [
'c_std=gnu99',
meson_version : '>= 0.46',
)
-libsystemd_version = '0.25.0'
-libudev_version = '1.6.13'
+libsystemd_version = '0.26.0'
+libudev_version = '1.6.14'
# We need the same data in two different formats, ugh!
# Also, for hysterical reasons, we use different variable
possible_link_flags += '-Wl,--gc-sections'
endif
+if get_option('b_ndebug') == 'true'
+ # With asserts disabled with get a bunch of warnings about variables which
+ # are used only in the asserts. This is not useful at all, so let's just silence
+ # those warnings.
+ possible_cc_flags += [
+ '-Wno-unused-variable',
+ '-Wno-unused-but-set-variable',
+ ]
+endif
+
add_project_arguments(cc.get_supported_arguments(possible_cc_flags), language : 'c')
add_project_link_arguments(cc.get_supported_link_arguments(possible_link_flags), language : 'c')
conf.set10('WANT_LINUX_STAT_H', want_linux_stat_h)
-foreach decl : [['ETHTOOL_LINK_MODE_10baseT_Half_BIT', 'linux/ethtool.h'],
- ['ETHTOOL_LINK_MODE_25000baseCR_Full_BIT', 'linux/ethtool.h'],
- ['ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT', 'linux/ethtool.h'],
- ['ETHTOOL_LINK_MODE_1000baseX_Full_BIT', 'linux/ethtool.h'],
- ['ETHTOOL_LINK_MODE_2500baseT_Full_BIT', 'linux/ethtool.h'],
- ['ETHTOOL_LINK_MODE_FEC_NONE_BIT', 'linux/ethtool.h'],
- ['FRA_TUN_ID', 'linux/fib_rules.h'],
- ['FRA_SUPPRESS_PREFIXLEN', 'linux/fib_rules.h'],
- ['FRA_PAD', 'linux/fib_rules.h'],
- ['FRA_L3MDEV', 'linux/fib_rules.h'],
- ['FRA_UID_RANGE', 'linux/fib_rules.h'],
- ['FRA_DPORT_RANGE', 'linux/fib_rules.h'],
- ['FOU_ATTR_REMCSUM_NOPARTIAL', 'linux/fou.h'],
- ['FOU_CMD_GET', 'linux/fou.h'],
- ['IFA_FLAGS', 'linux/if_addr.h'],
- ['IFLA_BRIDGE_VLAN_TUNNEL_INFO', 'linux/if_bridge.h'],
- ['IFLA_INET6_ADDR_GEN_MODE', 'linux/if_link.h'],
- ['IN6_ADDR_GEN_MODE_STABLE_PRIVACY', 'linux/if_link.h'],
- ['IN6_ADDR_GEN_MODE_RANDOM', 'linux/if_link.h'],
- ['IFLA_IPVLAN_MODE', 'linux/if_link.h'],
- ['IPVLAN_MODE_L3S', 'linux/if_link.h'],
- ['IFLA_IPVLAN_FLAGS', 'linux/if_link.h'],
- ['IFLA_PHYS_PORT_ID', 'linux/if_link.h'],
- ['IFLA_CARRIER_CHANGES', 'linux/if_link.h'],
- ['IFLA_PHYS_SWITCH_ID', 'linux/if_link.h'],
- ['IFLA_LINK_NETNSID', 'linux/if_link.h'],
- ['IFLA_PHYS_PORT_NAME', 'linux/if_link.h'],
- ['IFLA_PROTO_DOWN', 'linux/if_link.h'],
- ['IFLA_GSO_MAX_SIZE', 'linux/if_link.h'],
- ['IFLA_PAD', 'linux/if_link.h'],
- ['IFLA_XDP', 'linux/if_link.h'],
- ['IFLA_EVENT', 'linux/if_link.h'],
- ['IFLA_IF_NETNSID', 'linux/if_link.h'],
- ['IFLA_TARGET_NETNSID', 'linux/if_link.h'],
- ['IFLA_NEW_IFINDEX', 'linux/if_link.h'],
- ['IFLA_MAX_MTU', 'linux/if_link.h'],
- ['IFLA_BOND_MODE', 'linux/if_link.h'],
- ['IFLA_BOND_ACTIVE_SLAVE', 'linux/if_link.h'],
- ['IFLA_BOND_AD_INFO', 'linux/if_link.h'],
- ['IFLA_BOND_AD_ACTOR_SYSTEM', 'linux/if_link.h'],
- ['IFLA_BOND_TLB_DYNAMIC_LB', 'linux/if_link.h'],
- ['IFLA_VXLAN_UDP_ZERO_CSUM6_RX', 'linux/if_link.h'],
- ['IFLA_VXLAN_REMCSUM_NOPARTIAL', 'linux/if_link.h'],
- ['IFLA_VXLAN_COLLECT_METADATA', 'linux/if_link.h'],
- ['IFLA_VXLAN_LABEL', 'linux/if_link.h'],
- ['IFLA_VXLAN_GPE', 'linux/if_link.h'],
- ['IFLA_VXLAN_TTL_INHERIT', 'linux/if_link.h'],
- ['IFLA_GENEVE_TOS', 'linux/if_link.h'],
- ['IFLA_GENEVE_COLLECT_METADATA', 'linux/if_link.h'],
- ['IFLA_GENEVE_REMOTE6', 'linux/if_link.h'],
- ['IFLA_GENEVE_UDP_ZERO_CSUM6_RX', 'linux/if_link.h'],
- ['IFLA_GENEVE_LABEL', 'linux/if_link.h'],
- ['IFLA_GENEVE_TTL_INHERIT', 'linux/if_link.h'],
- ['IFLA_BR_MAX_AGE', 'linux/if_link.h'],
- ['IFLA_BR_PRIORITY', 'linux/if_link.h'],
- ['IFLA_BR_VLAN_PROTOCOL', 'linux/if_link.h'],
- ['IFLA_BR_VLAN_DEFAULT_PVID', 'linux/if_link.h'],
- ['IFLA_BR_VLAN_STATS_ENABLED', 'linux/if_link.h'],
- ['IFLA_BR_MCAST_STATS_ENABLED', 'linux/if_link.h'],
- ['IFLA_BR_MCAST_MLD_VERSION', 'linux/if_link.h'],
- ['IFLA_BR_VLAN_STATS_PER_PORT', 'linux/if_link.h'],
- ['IFLA_BRPORT_LEARNING_SYNC', 'linux/if_link.h'],
- ['IFLA_BRPORT_PROXYARP_WIFI', 'linux/if_link.h'],
- ['IFLA_BRPORT_MULTICAST_ROUTER', 'linux/if_link.h'],
- ['IFLA_BRPORT_PAD', 'linux/if_link.h'],
- ['IFLA_BRPORT_MCAST_FLOOD', 'linux/if_link.h'],
- ['IFLA_BRPORT_VLAN_TUNNEL', 'linux/if_link.h'],
- ['IFLA_BRPORT_BCAST_FLOOD', 'linux/if_link.h'],
- ['IFLA_BRPORT_NEIGH_SUPPRESS', 'linux/if_link.h'],
- ['IFLA_BRPORT_ISOLATED', 'linux/if_link.h'],
- ['IFLA_BRPORT_BACKUP_PORT', 'linux/if_link.h'],
- ['IFLA_VRF_TABLE', 'linux/if_link.h'],
- # if_tunnel.h is buggy and cannot be included on its own
- ['IFLA_VTI_FWMARK', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_IPTUN_ENCAP_DPORT', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_IPTUN_COLLECT_METADATA', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_IPTUN_FWMARK', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_GRE_ENCAP_DPORT', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_GRE_COLLECT_METADATA', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_GRE_IGNORE_DF', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_GRE_FWMARK', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_GRE_ERSPAN_INDEX', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['IFLA_GRE_ERSPAN_HWID', 'linux/if_tunnel.h', '#include <net/if.h>'],
- ['LO_FLAGS_PARTSCAN', 'linux/loop.h'],
- ]
- prefix = decl.length() > 2 ? decl[2] : ''
- have = cc.has_header_symbol(decl[1], decl[0], prefix : prefix)
- conf.set10('HAVE_' + decl[0], have)
-endforeach
-
foreach ident : ['secure_getenv', '__secure_getenv']
conf.set10('HAVE_' + ident.to_upper(), cc.has_function(ident))
endforeach
error('POSIX caps headers not found')
endif
foreach header : ['crypt.h',
- 'linux/btrfs_tree.h',
- 'linux/fou.h',
'linux/memfd.h',
'linux/vm_sockets.h',
- 'linux/can/vxcan.h',
'sys/auxv.h',
'valgrind/memcheck.h',
'valgrind/valgrind.h',
# Note that we link NSS modules with '-z nodelete' so that mempools never get orphaned
link_args : ['-Wl,-z,nodelete',
'-shared',
- '-Wl,--version-script=' + version_script_arg,
- '-Wl,--undefined'],
+ '-Wl,--version-script=' + version_script_arg],
link_with : [libsystemd_static,
libbasic],
dependencies : [threads,