]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/network/meson.build
network: move DNS related conf parsers to networkd-dns.[ch]
[thirdparty/systemd.git] / src / network / meson.build
CommitLineData
db9ecf05 1# SPDX-License-Identifier: LGPL-2.1-or-later
3a726fcd 2
f1b98127
ZJS
3sources = files(
4 'netdev/bareudp.c',
f1b98127 5 'netdev/batadv.c',
f1b98127 6 'netdev/bond.c',
f1b98127 7 'netdev/bridge.c',
f1b98127 8 'netdev/dummy.c',
f1b98127 9 'netdev/fou-tunnel.c',
6bb89282 10 'netdev/geneve.c',
f1b98127 11 'netdev/ifb.c',
f1b98127 12 'netdev/ipoib.c',
f1b98127 13 'netdev/ipvlan.c',
f1b98127 14 'netdev/l2tp-tunnel.c',
f1b98127 15 'netdev/macsec.c',
f1b98127 16 'netdev/macvlan.c',
f1b98127 17 'netdev/netdev-util.c',
f1b98127 18 'netdev/netdev.c',
f1b98127 19 'netdev/netdevsim.c',
f1b98127 20 'netdev/nlmon.c',
f1b98127 21 'netdev/tunnel.c',
f1b98127 22 'netdev/tuntap.c',
f1b98127 23 'netdev/vcan.c',
f1b98127 24 'netdev/veth.c',
f1b98127 25 'netdev/vlan.c',
f1b98127 26 'netdev/vrf.c',
f1b98127 27 'netdev/vxcan.c',
6bb89282 28 'netdev/vxlan.c',
f1b98127 29 'netdev/wireguard.c',
f1b98127 30 'netdev/wlan.c',
f1b98127 31 'netdev/xfrm.c',
f1b98127 32 'networkd-address-generation.c',
f1b98127 33 'networkd-address-label.c',
f1b98127 34 'networkd-address-pool.c',
f1b98127 35 'networkd-address.c',
f1b98127 36 'networkd-bridge-fdb.c',
f1b98127 37 'networkd-bridge-mdb.c',
f1b98127 38 'networkd-bridge-vlan.c',
f1b98127 39 'networkd-can.c',
f1b98127 40 'networkd-conf.c',
f1b98127 41 'networkd-dhcp-common.c',
f1b98127 42 'networkd-dhcp-prefix-delegation.c',
f1b98127 43 'networkd-dhcp-server-bus.c',
f1b98127 44 'networkd-dhcp-server-static-lease.c',
f1b98127 45 'networkd-dhcp-server.c',
f8da534e 46 'networkd-dhcp4-bus.c',
f1b98127 47 'networkd-dhcp4.c',
f8da534e 48 'networkd-dhcp6-bus.c',
f1b98127 49 'networkd-dhcp6.c',
54bb2c0e 50 'networkd-dns.c',
f1b98127 51 'networkd-ipv4acd.c',
f1b98127 52 'networkd-ipv4ll.c',
f1b98127 53 'networkd-ipv6-proxy-ndp.c',
f1b98127 54 'networkd-ipv6ll.c',
f1b98127 55 'networkd-json.c',
f1b98127 56 'networkd-link-bus.c',
f1b98127 57 'networkd-link.c',
f1b98127 58 'networkd-lldp-rx.c',
f1b98127 59 'networkd-lldp-tx.c',
f1b98127 60 'networkd-manager.c',
c5c74d85
LP
61 'networkd-manager-bus.c',
62 'networkd-manager-varlink.c',
f1b98127 63 'networkd-ndisc.c',
f1b98127 64 'networkd-neighbor.c',
4b3590c3 65 'networkd-netlabel.c',
f1b98127 66 'networkd-network-bus.c',
f1b98127 67 'networkd-network.c',
f1b98127 68 'networkd-nexthop.c',
f1b98127 69 'networkd-queue.c',
6bb89282 70 'networkd-radv.c',
f1b98127 71 'networkd-route.c',
df8767fc
YW
72 'networkd-route-metric.c',
73 'networkd-route-nexthop.c',
74 'networkd-route-util.c',
f1b98127 75 'networkd-routing-policy-rule.c',
f1b98127 76 'networkd-setlink.c',
f1b98127 77 'networkd-speed-meter.c',
f1b98127 78 'networkd-sriov.c',
f1b98127 79 'networkd-state-file.c',
f1b98127 80 'networkd-sysctl.c',
f1b98127 81 'networkd-util.c',
f1b98127 82 'networkd-wifi.c',
f1b98127 83 'networkd-wiphy.c',
f1b98127 84 'tc/cake.c',
f1b98127 85 'tc/codel.c',
f1b98127 86 'tc/drr.c',
f1b98127 87 'tc/ets.c',
f1b98127 88 'tc/fifo.c',
f1b98127 89 'tc/fq-codel.c',
f1b98127 90 'tc/fq-pie.c',
6bb89282 91 'tc/fq.c',
f1b98127 92 'tc/gred.c',
f1b98127 93 'tc/hhf.c',
f1b98127 94 'tc/htb.c',
f1b98127 95 'tc/netem.c',
f1b98127 96 'tc/pie.c',
f1b98127 97 'tc/qdisc.c',
f1b98127 98 'tc/qfq.c',
f1b98127 99 'tc/sfb.c',
f1b98127 100 'tc/sfq.c',
f1b98127 101 'tc/tbf.c',
f1b98127 102 'tc/tc-util.c',
f1b98127 103 'tc/tc.c',
f1b98127 104 'tc/tclass.c',
f1b98127 105 'tc/teql.c',
2f492a73 106)
5c23128d
ZJS
107
108systemd_networkd_sources = files('networkd.c')
109
f1b98127
ZJS
110systemd_networkd_wait_online_sources = files(
111 'wait-online/link.c',
f1b98127 112 'wait-online/manager.c',
2f492a73
ZJS
113 'wait-online/wait-online.c',
114)
5c23128d 115
15fde154
MY
116networkctl_sources = files(
117 'networkctl.c',
118 'networkctl-config-file.c'
119)
5c23128d 120
f1b98127
ZJS
121network_generator_sources = files(
122 'generator/main.c',
123 'generator/network-generator.c',
2f492a73 124)
426c1d38 125
cbc55c4c
YW
126networkd_network_gperf_gperf = files('networkd-network-gperf.gperf')
127networkd_netdev_gperf_gperf = files('netdev/netdev-gperf.gperf')
128
b09f0146
YW
129sources += custom_target(
130 'networkd-gperf.c',
131 input : 'networkd-gperf.gperf',
132 output : 'networkd-gperf.c',
133 command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
69e96427 134
b09f0146
YW
135sources += custom_target(
136 'networkd-network-gperf.c',
cbc55c4c 137 input : networkd_network_gperf_gperf,
b09f0146
YW
138 output : 'networkd-network-gperf.c',
139 command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
5ac8b50d 140
b09f0146
YW
141sources += custom_target(
142 'netdev-gperf.c',
cbc55c4c 143 input : networkd_netdev_gperf_gperf,
b09f0146
YW
144 output : 'netdev-gperf.c',
145 command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
5c23128d 146
b09f0146
YW
147if get_option('link-networkd-shared')
148 networkd_link_with = [libshared]
149else
150 networkd_link_with = [libsystemd_static,
8707c9b2 151 libshared_static]
b09f0146 152endif
5c23128d 153
8d40961c 154network_includes = [libsystemd_network_includes, include_directories(['.', 'netdev', 'tc'])]
5c23128d 155
b09f0146
YW
156libnetworkd_core = static_library(
157 'networkd-core',
158 sources,
8d40961c 159 include_directories : network_includes,
92148283 160 dependencies : userspace,
03f7ddf0
ZJS
161 link_with : networkd_link_with,
162 build_by_default : false)
5c23128d 163
130c87b1
YW
164network_test_template = test_template + {
165 'link_with' : [
166 libnetworkd_core,
167 libsystemd_network,
168 ],
169 'include_directories' : network_includes,
170}
171
cbc55c4c
YW
172network_fuzz_template = fuzz_template + {
173 'link_with' : [
174 libnetworkd_core,
175 libsystemd_network,
176 ],
177 'dependencies' : threads,
178 'include_directories' : network_includes,
179}
180
7be6a143
YW
181executables += [
182 libexec_template + {
183 'name' : 'systemd-networkd',
184 'dbus' : true,
185 'conditions' : ['ENABLE_NETWORKD'],
186 'sources' : systemd_networkd_sources,
187 'include_directories' : network_includes,
188 'link_with' : [
189 libnetworkd_core,
190 libsystemd_network,
191 networkd_link_with,
192 ],
193 'dependencies' : threads,
194 },
195 libexec_template + {
196 'name' : 'systemd-networkd-wait-online',
197 'public' : true,
198 'conditions' : ['ENABLE_NETWORKD'],
199 'sources' : systemd_networkd_wait_online_sources,
200 'link_with' : networkd_link_with,
201 },
202 executable_template + {
203 'name' : 'networkctl',
204 'public' : true,
205 'conditions' : ['ENABLE_NETWORKD'],
206 'sources' : networkctl_sources,
207 'include_directories' : libsystemd_network_includes,
208 'link_with' : [
209 libsystemd_network,
210 networkd_link_with,
211 ],
212 },
213 libexec_template + {
214 'name' : 'systemd-network-generator',
215 'sources' : network_generator_sources,
216 'link_with' : networkd_link_with,
217 },
130c87b1
YW
218 test_template + {
219 'sources' : files(
220 'generator/test-network-generator.c',
221 'generator/network-generator.c',
222 ),
223 'suite' : 'network',
224 },
225 network_test_template + {
226 'sources' : files('test-network-tables.c'),
227 'dependencies' : threads,
228 },
229 network_test_template + {
230 'sources' : files('test-network.c'),
231 'dependencies' : threads,
232 },
233 network_test_template + {
234 'sources' : files('test-networkd-address.c'),
235 'dependencies' : libatomic,
236 },
237 network_test_template + {
238 'sources' : files('test-networkd-conf.c'),
239 'dependencies' : libatomic,
240 },
241 network_test_template + {
242 'sources' : files('test-networkd-util.c'),
243 },
cbc55c4c
YW
244 network_fuzz_template + {
245 'sources' : files('fuzz-netdev-parser.c'),
246 },
247 network_fuzz_template + {
248 'sources' : files('fuzz-network-parser.c'),
249 },
7be6a143
YW
250]
251
b09f0146 252if conf.get('ENABLE_NETWORKD') == 1
37efbbd8
ZJS
253 install_data('org.freedesktop.network1.conf',
254 install_dir : dbuspolicydir)
255 install_data('org.freedesktop.network1.service',
256 install_dir : dbussystemservicedir)
15761549
YW
257 install_data('org.freedesktop.network1.policy',
258 install_dir : polkitpolicydir)
37efbbd8
ZJS
259 if install_polkit
260 install_data('systemd-networkd.rules',
261 install_dir : polkitrulesdir)
262 endif
263 if install_polkit_pkla
264 install_data('systemd-networkd.pkla',
265 install_dir : polkitpkladir)
266 endif
69e96427 267
225d08b8 268 if install_sysconfdir_samples
d7aa78c3 269 install_data('networkd.conf',
6495361c 270 install_dir : pkgconfigfiledir)
d7aa78c3 271 endif
b09f0146 272endif