blob: 01eb1eb20a455c72fbcaa7d710ccee65cd33b848 [file] [log] [blame]
William A. Kennington III1bbe3d12021-05-13 23:45:09 -07001src_includes = include_directories('.')
2
William A. Kennington IIIe7c5aaa2022-10-06 13:17:15 -07003stdplus_dep = dependency('stdplus')
William A. Kennington IIIa68ab4b2021-10-07 19:16:16 -07004
William A. Kennington III1bbe3d12021-05-13 23:45:09 -07005executable(
6 'ncsi-netlink',
7 'argument.cpp',
8 'ncsi_netlink_main.cpp',
9 'ncsi_util.cpp',
10 implicit_include_directories: false,
11 include_directories: src_includes,
12 dependencies: [
13 dependency('libnl-3.0'),
14 dependency('libnl-genl-3.0'),
Jagpal Singh Gilld423beb2023-04-18 11:28:03 -070015 dependency('phosphor-logging'),
William A. Kennington IIIe7c5aaa2022-10-06 13:17:15 -070016 stdplus_dep,
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070017 ],
18 install: true,
19 install_dir: get_option('bindir'))
20
Jeremy Kerrbad17c02024-11-21 16:44:39 +080021executable(
22 'ncsi-cmd',
23 'ncsi_cmd.cpp',
24 'ncsi_util.cpp',
25 implicit_include_directories: false,
26 include_directories: src_includes,
27 dependencies: [
28 dependency('libnl-3.0'),
29 dependency('libnl-genl-3.0'),
30 dependency('phosphor-logging'),
31 stdplus_dep,
32 ],
33 install: true,
34 install_dir: get_option('bindir'))
35
William A. Kennington III0b111d42022-10-04 18:06:11 -070036main_deps = []
37main_srcs = []
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070038if get_option('sync-mac')
William A. Kennington III0b111d42022-10-04 18:06:11 -070039 main_srcs += [
40 'inventory_mac.cpp',
41 ]
William A. Kennington III0b111d42022-10-04 18:06:11 -070042 main_deps += [
Patrick Williams1f0052f2023-12-07 17:08:49 -060043 dependency('nlohmann_json', include_type: 'system')
William A. Kennington III0b111d42022-10-04 18:06:11 -070044 ]
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070045endif
46
47networkd_deps = [
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070048 phosphor_dbus_interfaces_dep,
William A. Kennington IIIe7c5aaa2022-10-06 13:17:15 -070049 dependency('phosphor-logging'),
William A. Kennington III37cf66c2021-05-17 14:56:54 -070050 networkd_dbus_dep,
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070051 sdbusplus_dep,
William A. Kennington IIIe7c5aaa2022-10-06 13:17:15 -070052 stdplus_dep,
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070053]
54
55conf_header = configure_file(
56 output: 'config.h',
57 configuration: conf_data)
58
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070059networkd_lib = static_library(
60 'networkd',
William A. Kennington III37cf66c2021-05-17 14:56:54 -070061 conf_header,
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070062 'ethernet_interface.cpp',
63 'neighbor.cpp',
64 'ipaddress.cpp',
Ravi Tejaab27a812023-05-02 10:01:53 -050065 'static_gateway.cpp',
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070066 'netlink.cpp',
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070067 'network_manager.cpp',
William A. Kennington IIIa7344c32022-10-31 14:12:27 -070068 'rtnetlink.cpp',
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070069 'system_configuration.cpp',
William A. Kennington III2e09d272022-10-14 17:15:00 -070070 'system_queries.cpp',
William A. Kennington IIIbb0eacc2022-10-21 15:22:06 -070071 'types.cpp',
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070072 'util.cpp',
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070073 'config_parser.cpp',
74 'dhcp_configuration.cpp',
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070075 'dns_updater.cpp',
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070076 implicit_include_directories: false,
William A. Kennington III37cf66c2021-05-17 14:56:54 -070077 include_directories: src_includes,
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070078 dependencies: networkd_deps)
79
80networkd_dep = declare_dependency(
William A. Kennington III37cf66c2021-05-17 14:56:54 -070081 sources: conf_header,
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070082 dependencies: networkd_deps,
William A. Kennington III37cf66c2021-05-17 14:56:54 -070083 include_directories: src_includes,
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070084 link_with: networkd_lib)
85
86executable(
87 'phosphor-network-manager',
88 'network_manager_main.cpp',
William A. Kennington IIIde70ccf2022-11-20 17:18:01 -080089 'rtnetlink_server.cpp',
William A. Kennington III0b111d42022-10-04 18:06:11 -070090 main_srcs,
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070091 implicit_include_directories: false,
William A. Kennington IIIde70ccf2022-11-20 17:18:01 -080092 dependencies: main_deps + [
93 networkd_dep,
94 dependency('sdeventplus'),
95 ],
William A. Kennington III1bbe3d12021-05-13 23:45:09 -070096 install: true,
97 install_dir: get_option('bindir'))
Asmitha Karunanithibe2bdec2021-05-13 02:54:29 -050098
99if (get_option('hyp-nw-config') == true)
100 subdir('ibm')
101endif