blob: f5ca183088d5c61084617e86f630f7d98df0eab9 [file] [log] [blame] [raw]
# SPDX-License-Identifier: LGPL-2.1-or-later
sources = files('''
netdev/bareudp.c
netdev/bareudp.h
netdev/bond.c
netdev/bond.h
netdev/bridge.c
netdev/bridge.h
netdev/dummy.c
netdev/dummy.h
netdev/ifb.c
netdev/ifb.h
netdev/ipvlan.c
netdev/ipvlan.h
netdev/macvlan.c
netdev/macvlan.h
netdev/netdev.c
netdev/netdev.h
netdev/nlmon.c
netdev/nlmon.h
netdev/tunnel.c
netdev/tunnel.h
netdev/tuntap.c
netdev/tuntap.h
netdev/vcan.c
netdev/vcan.h
netdev/veth.c
netdev/veth.h
netdev/vlan.c
netdev/vlan.h
netdev/vrf.c
netdev/vrf.h
netdev/vxlan.c
netdev/vxlan.h
netdev/geneve.c
netdev/geneve.h
netdev/vxcan.c
netdev/vxcan.h
netdev/wireguard.c
netdev/wireguard.h
netdev/netdevsim.c
netdev/netdevsim.h
netdev/fou-tunnel.c
netdev/fou-tunnel.h
netdev/l2tp-tunnel.c
netdev/l2tp-tunnel.h
netdev/macsec.c
netdev/macsec.h
netdev/xfrm.c
netdev/xfrm.h
networkd-address-label.c
networkd-address-label.h
networkd-address-pool.c
networkd-address-pool.h
networkd-address.c
networkd-address.h
networkd-brvlan.c
networkd-brvlan.h
networkd-can.c
networkd-can.h
networkd-conf.c
networkd-conf.h
networkd-dhcp-common.c
networkd-dhcp-common.h
networkd-dhcp-server-bus.c
networkd-dhcp-server-bus.h
networkd-dhcp-server.c
networkd-dhcp-server.h
networkd-dhcp4.c
networkd-dhcp4.h
networkd-dhcp6.c
networkd-dhcp6.h
networkd-fdb.c
networkd-fdb.h
networkd-ipv4ll.c
networkd-ipv4ll.h
networkd-ipv6-proxy-ndp.c
networkd-ipv6-proxy-ndp.h
networkd-link-bus.c
networkd-link-bus.h
networkd-link.c
networkd-link.h
networkd-lldp-rx.c
networkd-lldp-rx.h
networkd-lldp-tx.c
networkd-lldp-tx.h
networkd-manager-bus.c
networkd-manager-bus.h
networkd-manager.c
networkd-manager.h
networkd-mdb.c
networkd-mdb.h
networkd-ndisc.c
networkd-ndisc.h
networkd-neighbor.c
networkd-neighbor.h
networkd-radv.c
networkd-radv.h
networkd-network-bus.c
networkd-network-bus.h
networkd-network.c
networkd-network.h
networkd-nexthop.c
networkd-nexthop.h
networkd-route.c
networkd-route.h
networkd-routing-policy-rule.c
networkd-routing-policy-rule.h
networkd-speed-meter.c
networkd-speed-meter.h
networkd-sriov.c
networkd-sriov.h
networkd-sysctl.c
networkd-sysctl.h
networkd-util.c
networkd-util.h
networkd-wifi.c
networkd-wifi.h
tc/cake.c
tc/cake.h
tc/codel.c
tc/codel.h
tc/drr.c
tc/drr.h
tc/ets.c
tc/ets.h
tc/fifo.c
tc/fifo.h
tc/fq.c
tc/fq.h
tc/fq-codel.c
tc/fq-codel.h
tc/fq-pie.c
tc/fq-pie.h
tc/gred.c
tc/gred.h
tc/hhf.c
tc/hhf.h
tc/htb.c
tc/htb.h
tc/netem.c
tc/netem.h
tc/pie.c
tc/pie.h
tc/qdisc.c
tc/qdisc.h
tc/qfq.c
tc/qfq.h
tc/sfb.c
tc/sfb.h
tc/sfq.c
tc/sfq.h
tc/tbf.c
tc/tbf.h
tc/tc-util.c
tc/tc-util.h
tc/tc.c
tc/tc.h
tc/tclass.c
tc/tclass.h
tc/teql.c
tc/teql.h
'''.split())
systemd_networkd_sources = files('networkd.c')
systemd_networkd_wait_online_sources = files('''
wait-online/link.c
wait-online/link.h
wait-online/manager.c
wait-online/manager.h
wait-online/wait-online.c
'''.split()) + network_internal_h
networkctl_sources = files('networkctl.c')
network_generator_sources = files('''
generator/main.c
generator/network-generator.c
generator/network-generator.h
'''.split())
network_include_dir = [includes, include_directories(['.', 'netdev', 'tc'])]
if conf.get('ENABLE_NETWORKD') == 1
if get_option('link-networkd-shared')
networkd_link_with = [libshared]
else
networkd_link_with = [libsystemd_static,
libshared_static,
libjournal_client,
libbasic_gcrypt]
endif
networkd_gperf_c = custom_target(
'networkd-gperf.c',
input : 'networkd-gperf.gperf',
output : 'networkd-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
networkd_network_gperf_c = custom_target(
'networkd-network-gperf.c',
input : 'networkd-network-gperf.gperf',
output : 'networkd-network-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
netdev_gperf_c = custom_target(
'netdev-gperf.c',
input : 'netdev/netdev-gperf.gperf',
output : 'netdev-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
libnetworkd_core = static_library(
'networkd-core',
sources,
network_internal_h,
networkd_gperf_c,
networkd_network_gperf_c,
netdev_gperf_c,
include_directories : network_include_dir,
link_with : [networkd_link_with])
install_data('org.freedesktop.network1.conf',
install_dir : dbuspolicydir)
install_data('org.freedesktop.network1.service',
install_dir : dbussystemservicedir)
install_data('org.freedesktop.network1.policy',
install_dir : polkitpolicydir)
if install_polkit
install_data('systemd-networkd.rules',
install_dir : polkitrulesdir)
endif
if install_polkit_pkla
install_data('systemd-networkd.pkla',
install_dir : polkitpkladir)
endif
if install_sysconfdir
install_data('networkd.conf',
install_dir : pkgsysconfdir)
endif
fuzzers += [
[['src/network/fuzz-netdev-parser.c',
'src/fuzz/fuzz.h'],
[libnetworkd_core,
libudev_static,
libsystemd_network,
networkd_link_with],
[threads],
[],
network_include_dir],
[['src/network/fuzz-network-parser.c',
'src/fuzz/fuzz.h'],
[libnetworkd_core,
libudev_static,
libsystemd_network,
networkd_link_with],
[threads],
[],
network_include_dir],
]
tests += [
[['src/network/test-networkd-conf.c'],
[libnetworkd_core,
libsystemd_network,
libudev],
[], '', '', [], network_include_dir],
[['src/network/test-network.c'],
[libnetworkd_core,
libudev_static,
libsystemd_network,
networkd_link_with],
[threads],
'', '', [], network_include_dir],
[['src/network/test-routing-policy-rule.c'],
[libnetworkd_core,
libsystemd_network,
libudev],
[], '', '', [], network_include_dir],
[['src/network/test-network-tables.c',
test_tables_h],
[libnetworkd_core,
libudev_static,
libsystemd_network,
networkd_link_with],
[threads],
'', '', [],
[network_include_dir]],
[['src/network/generator/test-network-generator.c',
'src/network/generator/network-generator.c',
'src/network/generator/network-generator.h'],
[networkd_link_with],
[], '', '', [], network_include_dir],
]
endif