xref: /openbmc/phosphor-networkd/meson.build (revision 3bf1c74e)
1project(
2  'phosphor-networkd',
3  'cpp',
4  version: '0.1',
5  meson_version: '>=0.57.0',
6  default_options: [
7    'warning_level=3',
8    'cpp_std=c++20',
9  ])
10
11default_busname = 'xyz.openbmc_project.Network'
12
13conf_data = configuration_data()
14conf_data.set_quoted('DEFAULT_BUSNAME', default_busname)
15conf_data.set('HAVE_UBOOT_ENV', get_option('uboot-env'))
16conf_data.set(
17  'LINK_LOCAL_AUTOCONFIGURATION',
18  get_option('default-link-local-autoconf'))
19conf_data.set(
20  'ENABLE_IPV6_ACCEPT_RA',
21  get_option('default-ipv6-accept-ra'))
22conf_data.set('NIC_SUPPORTS_ETHTOOL', get_option('nic-ethtool'))
23conf_data.set('SYNC_MAC_FROM_INVENTORY', get_option('sync-mac'))
24
25sdbusplus_dep = dependency('sdbusplus', required: false)
26if sdbusplus_dep.found()
27  sdbusplusplus_prog = find_program('sdbus++', native: true)
28  sdbuspp_gen_meson_prog = find_program('sdbus++-gen-meson', native: true)
29else
30  sdbusplus_proj = subproject('sdbusplus', required: true)
31  sdbusplus_dep = sdbusplus_proj.get_variable('sdbusplus_dep')
32  sdbusplusplus_prog = sdbusplus_proj.get_variable('sdbusplusplus_prog')
33  sdbuspp_gen_meson_prog = sdbusplus_proj.get_variable('sdbuspp_gen_meson_prog')
34endif
35
36generated_sources = []
37generated_others = []
38yaml_sources = []
39subdir('gen')
40subdir('gen/xyz')
41generated_includes = include_directories('gen')
42
43subdir('src')
44
45configure_file(
46  input: 'xyz.openbmc_project.Network.service.in',
47  output: 'xyz.openbmc_project.Network.service',
48  configuration: {
49    'SYSTEMD_TARGET': 'multi-user.target',
50    'DEFAULT_BUSNAME': default_busname,
51  },
52  install: true,
53  install_dir: dependency('systemd').get_variable(
54    pkgconfig: 'systemdsystemunitdir'))
55
56configure_file(
57  input: 'xyz.openbmc_project.Network.conf.in',
58  output: 'xyz.openbmc_project.Network.conf',
59  configuration: {'DEFAULT_BUSNAME': default_busname},
60  install: true,
61  install_dir: get_option('datadir') / 'dbus-1' / 'system.d')
62
63if not get_option('tests').disabled()
64  subdir('test')
65endif
66