mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-09-06 17:14:02 +00:00
![Fernando Fernandez Mancera](/assets/img/avatar_default.png)
This patch add support to HSR/PRP interface. Please notice that PRP driver is represented as HSR too. They are different drivers but on kernel they are integrated together. HSR/PRP is a network protocol standard for Ethernet that provides seamless failover against failure of any network component. It intends to be transparent to the application. These protocols are useful for applications that request high availability and short switchover time e.g electrical substation or high power inverters. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1791
111 lines
3.7 KiB
Meson
111 lines
3.7 KiB
Meson
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
|
|
ifaces = [
|
|
'org.freedesktop.NetworkManager',
|
|
'org.freedesktop.NetworkManager.AccessPoint',
|
|
'org.freedesktop.NetworkManager.AgentManager',
|
|
'org.freedesktop.NetworkManager.Checkpoint',
|
|
'org.freedesktop.NetworkManager.Connection.Active',
|
|
'org.freedesktop.NetworkManager.DHCP4Config',
|
|
'org.freedesktop.NetworkManager.DHCP6Config',
|
|
'org.freedesktop.NetworkManager.Device',
|
|
'org.freedesktop.NetworkManager.Device.Adsl',
|
|
'org.freedesktop.NetworkManager.Device.Bluetooth',
|
|
'org.freedesktop.NetworkManager.Device.Bond',
|
|
'org.freedesktop.NetworkManager.Device.Bridge',
|
|
'org.freedesktop.NetworkManager.Device.Dummy',
|
|
'org.freedesktop.NetworkManager.Device.Generic',
|
|
'org.freedesktop.NetworkManager.Device.Hsr',
|
|
'org.freedesktop.NetworkManager.Device.IPTunnel',
|
|
'org.freedesktop.NetworkManager.Device.Infiniband',
|
|
'org.freedesktop.NetworkManager.Device.Loopback',
|
|
'org.freedesktop.NetworkManager.Device.Lowpan',
|
|
'org.freedesktop.NetworkManager.Device.Macsec',
|
|
'org.freedesktop.NetworkManager.Device.Macvlan',
|
|
'org.freedesktop.NetworkManager.Device.Modem',
|
|
'org.freedesktop.NetworkManager.Device.OlpcMesh',
|
|
'org.freedesktop.NetworkManager.Device.OvsBridge',
|
|
'org.freedesktop.NetworkManager.Device.OvsInterface',
|
|
'org.freedesktop.NetworkManager.Device.OvsPort',
|
|
'org.freedesktop.NetworkManager.Device.Ppp',
|
|
'org.freedesktop.NetworkManager.Device.Statistics',
|
|
'org.freedesktop.NetworkManager.Device.Team',
|
|
'org.freedesktop.NetworkManager.Device.Tun',
|
|
'org.freedesktop.NetworkManager.Device.Veth',
|
|
'org.freedesktop.NetworkManager.Device.Vlan',
|
|
'org.freedesktop.NetworkManager.Device.Vrf',
|
|
'org.freedesktop.NetworkManager.Device.Vxlan',
|
|
'org.freedesktop.NetworkManager.Device.WiMax',
|
|
'org.freedesktop.NetworkManager.Device.WifiP2P',
|
|
'org.freedesktop.NetworkManager.Device.WireGuard',
|
|
'org.freedesktop.NetworkManager.Device.Wired',
|
|
'org.freedesktop.NetworkManager.Device.Wireless',
|
|
'org.freedesktop.NetworkManager.Device.Wpan',
|
|
'org.freedesktop.NetworkManager.DnsManager',
|
|
'org.freedesktop.NetworkManager.IP4Config',
|
|
'org.freedesktop.NetworkManager.IP6Config',
|
|
'org.freedesktop.NetworkManager.PPP',
|
|
'org.freedesktop.NetworkManager.SecretAgent',
|
|
'org.freedesktop.NetworkManager.Settings',
|
|
'org.freedesktop.NetworkManager.Settings.Connection',
|
|
'org.freedesktop.NetworkManager.VPN.Connection',
|
|
'org.freedesktop.NetworkManager.VPN.Plugin',
|
|
'org.freedesktop.NetworkManager.WiMax.Nsp',
|
|
'org.freedesktop.NetworkManager.WifiP2PPeer',
|
|
]
|
|
|
|
ifaces_xmls = []
|
|
sources = []
|
|
introspection_files = []
|
|
headers = []
|
|
|
|
foreach iface: ifaces
|
|
iface_xml = iface + '.xml'
|
|
ifaces_xmls += files(iface_xml)
|
|
|
|
res = gnome.gdbus_codegen(
|
|
iface,
|
|
iface_xml,
|
|
interface_prefix: 'org.freedesktop.NetworkManager',
|
|
namespace: 'NMDBus',
|
|
docbook: 'dbus',
|
|
)
|
|
|
|
sources += res
|
|
|
|
if gio_unix_dep.version().version_compare('>= 2.51.3')
|
|
dbus_iface_xml_path = join_paths(meson.current_build_dir(), 'dbus-' + iface_xml)
|
|
else
|
|
dbus_iface_xml_path = join_paths(build_root, 'dbus-' + iface_xml)
|
|
endif
|
|
|
|
content_files += dbus_iface_xml_path
|
|
|
|
# res is an array only since 0.46. Documentation won't work with
|
|
# older versions
|
|
if meson.version().version_compare('>= 0.46.0')
|
|
introspection_files += [ [res[2], dbus_iface_xml_path] ]
|
|
headers += res[1]
|
|
endif
|
|
|
|
endforeach
|
|
|
|
install_data(
|
|
ifaces_xmls,
|
|
install_dir: dbus_interfaces_dir,
|
|
)
|
|
|
|
libnmdbus = static_library(
|
|
'nmdbus',
|
|
sources: sources,
|
|
include_directories: top_inc,
|
|
c_args: introspection_extra_cflags,
|
|
dependencies: glib_dep,
|
|
)
|
|
|
|
libnmdbus_dep = declare_dependency(
|
|
sources: headers,
|
|
include_directories: top_inc,
|
|
dependencies: glib_dep,
|
|
)
|