137cf66c8SWilliam A. Kennington IIIphosphor_logging_dep = dependency( 237cf66c8SWilliam A. Kennington III 'phosphor-logging', 337cf66c8SWilliam A. Kennington III fallback: ['phosphor-logging', 'phosphor_logging_dep']) 41bbe3d1eSWilliam A. Kennington III 51bbe3d1eSWilliam A. Kennington IIIsrc_includes = include_directories('.') 61bbe3d1eSWilliam A. Kennington III 7a68ab4bbSWilliam A. Kennington IIIfmt_dep = dependency('fmt', required: false) 8a68ab4bbSWilliam A. Kennington IIIif not fmt_dep.found() 9a68ab4bbSWilliam A. Kennington III fmt_opts = import('cmake').subproject_options() 10a68ab4bbSWilliam A. Kennington III fmt_opts.add_cmake_defines({ 11a68ab4bbSWilliam A. Kennington III 'CMAKE_POSITION_INDEPENDENT_CODE': 'ON', 12a68ab4bbSWilliam A. Kennington III 'MASTER_PROJECT': 'OFF', 13a68ab4bbSWilliam A. Kennington III }) 14a68ab4bbSWilliam A. Kennington III fmt_proj = import('cmake').subproject( 15a68ab4bbSWilliam A. Kennington III 'fmt', 16a68ab4bbSWilliam A. Kennington III options: fmt_opts, 17a68ab4bbSWilliam A. Kennington III required: false) 18a68ab4bbSWilliam A. Kennington III assert(fmt_proj.found(), 'fmtlib is required') 19a68ab4bbSWilliam A. Kennington III fmt_dep = fmt_proj.dependency('fmt') 20a68ab4bbSWilliam A. Kennington IIIendif 21a68ab4bbSWilliam A. Kennington III 221bbe3d1eSWilliam A. Kennington IIIexecutable( 231bbe3d1eSWilliam A. Kennington III 'ncsi-netlink', 241bbe3d1eSWilliam A. Kennington III 'argument.cpp', 251bbe3d1eSWilliam A. Kennington III 'ncsi_netlink_main.cpp', 261bbe3d1eSWilliam A. Kennington III 'ncsi_util.cpp', 271bbe3d1eSWilliam A. Kennington III implicit_include_directories: false, 281bbe3d1eSWilliam A. Kennington III include_directories: src_includes, 291bbe3d1eSWilliam A. Kennington III dependencies: [ 30a68ab4bbSWilliam A. Kennington III fmt_dep, 311bbe3d1eSWilliam A. Kennington III dependency('libnl-3.0'), 321bbe3d1eSWilliam A. Kennington III dependency('libnl-genl-3.0'), 331bbe3d1eSWilliam A. Kennington III phosphor_dbus_interfaces_dep, 341bbe3d1eSWilliam A. Kennington III phosphor_logging_dep, 351bbe3d1eSWilliam A. Kennington III ], 361bbe3d1eSWilliam A. Kennington III install: true, 371bbe3d1eSWilliam A. Kennington III install_dir: get_option('bindir')) 381bbe3d1eSWilliam A. Kennington III 391bbe3d1eSWilliam A. Kennington IIIjson_dep = declare_dependency() 401bbe3d1eSWilliam A. Kennington IIIif get_option('sync-mac') 411bbe3d1eSWilliam A. Kennington III # nlohmann_json might not have a pkg-config. It is header only so just make 421bbe3d1eSWilliam A. Kennington III # sure we can access the needed symbols from the header. 431bbe3d1eSWilliam A. Kennington III has_json = meson.get_compiler('cpp').has_header_symbol( 441bbe3d1eSWilliam A. Kennington III 'nlohmann/json.hpp', 451bbe3d1eSWilliam A. Kennington III 'nlohmann::json::string_t', 461bbe3d1eSWilliam A. Kennington III required: false) 471bbe3d1eSWilliam A. Kennington III if not has_json 481bbe3d1eSWilliam A. Kennington III json_dep = dependency( 491bbe3d1eSWilliam A. Kennington III 'nlohmann_json', 501bbe3d1eSWilliam A. Kennington III fallback: ['nlohmann_json', 'nlohmann_json_dep'], 511bbe3d1eSWilliam A. Kennington III required: true) 521bbe3d1eSWilliam A. Kennington III endif 531bbe3d1eSWilliam A. Kennington IIIendif 541bbe3d1eSWilliam A. Kennington III 551bbe3d1eSWilliam A. Kennington IIInetworkd_deps = [ 561bbe3d1eSWilliam A. Kennington III json_dep, 571bbe3d1eSWilliam A. Kennington III phosphor_dbus_interfaces_dep, 581bbe3d1eSWilliam A. Kennington III phosphor_logging_dep, 5937cf66c8SWilliam A. Kennington III networkd_dbus_dep, 601bbe3d1eSWilliam A. Kennington III sdbusplus_dep, 611bbe3d1eSWilliam A. Kennington III dependency('sdeventplus', fallback: ['sdeventplus', 'sdeventplus_dep']), 621bbe3d1eSWilliam A. Kennington III dependency('stdplus', fallback: ['stdplus', 'stdplus_dep']), 631bbe3d1eSWilliam A. Kennington III] 641bbe3d1eSWilliam A. Kennington III 651bbe3d1eSWilliam A. Kennington IIIconf_header = configure_file( 661bbe3d1eSWilliam A. Kennington III output: 'config.h', 671bbe3d1eSWilliam A. Kennington III configuration: conf_data) 681bbe3d1eSWilliam A. Kennington III 691bbe3d1eSWilliam A. Kennington IIInetworkd_lib = static_library( 701bbe3d1eSWilliam A. Kennington III 'networkd', 7137cf66c8SWilliam A. Kennington III conf_header, 721bbe3d1eSWilliam A. Kennington III 'ethernet_interface.cpp', 731bbe3d1eSWilliam A. Kennington III 'neighbor.cpp', 741bbe3d1eSWilliam A. Kennington III 'ipaddress.cpp', 751bbe3d1eSWilliam A. Kennington III 'netlink.cpp', 761bbe3d1eSWilliam A. Kennington III 'network_config.cpp', 771bbe3d1eSWilliam A. Kennington III 'network_manager.cpp', 781bbe3d1eSWilliam A. Kennington III 'system_configuration.cpp', 791bbe3d1eSWilliam A. Kennington III 'util.cpp', 801bbe3d1eSWilliam A. Kennington III 'routing_table.cpp', 811bbe3d1eSWilliam A. Kennington III 'config_parser.cpp', 821bbe3d1eSWilliam A. Kennington III 'dhcp_configuration.cpp', 831bbe3d1eSWilliam A. Kennington III 'vlan_interface.cpp', 841bbe3d1eSWilliam A. Kennington III 'rtnetlink_server.cpp', 851bbe3d1eSWilliam A. Kennington III 'dns_updater.cpp', 861bbe3d1eSWilliam A. Kennington III 'watch.cpp', 871bbe3d1eSWilliam A. Kennington III implicit_include_directories: false, 8837cf66c8SWilliam A. Kennington III include_directories: src_includes, 891bbe3d1eSWilliam A. Kennington III dependencies: networkd_deps) 901bbe3d1eSWilliam A. Kennington III 911bbe3d1eSWilliam A. Kennington IIInetworkd_dep = declare_dependency( 9237cf66c8SWilliam A. Kennington III sources: conf_header, 931bbe3d1eSWilliam A. Kennington III dependencies: networkd_deps, 9437cf66c8SWilliam A. Kennington III include_directories: src_includes, 951bbe3d1eSWilliam A. Kennington III link_with: networkd_lib) 961bbe3d1eSWilliam A. Kennington III 971bbe3d1eSWilliam A. Kennington IIIexecutable( 981bbe3d1eSWilliam A. Kennington III 'phosphor-network-manager', 991bbe3d1eSWilliam A. Kennington III 'network_manager_main.cpp', 1001bbe3d1eSWilliam A. Kennington III implicit_include_directories: false, 1011bbe3d1eSWilliam A. Kennington III dependencies: networkd_dep, 1021bbe3d1eSWilliam A. Kennington III install: true, 1031bbe3d1eSWilliam A. Kennington III install_dir: get_option('bindir')) 104*be2bdecbSAsmitha Karunanithi 105*be2bdecbSAsmitha Karunanithiif (get_option('hyp-nw-config') == true) 106*be2bdecbSAsmitha Karunanithi subdir('ibm') 107*be2bdecbSAsmitha Karunanithiendif 108