2020-12-23 21:21:36 +00:00
|
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
2020-01-14 09:42:24 +00:00
|
|
|
|
2017-11-25 10:39:06 +00:00
|
|
|
ifaces = [
|
2019-01-28 14:21:59 +00:00
|
|
|
'org.freedesktop.NetworkManager',
|
2017-11-25 10:39:06 +00:00
|
|
|
'org.freedesktop.NetworkManager.AccessPoint',
|
|
|
|
'org.freedesktop.NetworkManager.AgentManager',
|
|
|
|
'org.freedesktop.NetworkManager.Checkpoint',
|
|
|
|
'org.freedesktop.NetworkManager.Connection.Active',
|
2019-01-28 14:21:59 +00:00
|
|
|
'org.freedesktop.NetworkManager.DHCP4Config',
|
|
|
|
'org.freedesktop.NetworkManager.DHCP6Config',
|
|
|
|
'org.freedesktop.NetworkManager.Device',
|
2017-11-25 10:39:06 +00:00
|
|
|
'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',
|
2023-10-27 12:01:13 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Hsr',
|
2017-11-25 10:39:06 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.IPTunnel',
|
2019-01-28 14:21:59 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Infiniband',
|
2022-06-12 23:50:09 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Loopback',
|
2018-05-22 14:24:58 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Lowpan',
|
2017-11-25 10:39:06 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Macsec',
|
|
|
|
'org.freedesktop.NetworkManager.Device.Macvlan',
|
|
|
|
'org.freedesktop.NetworkManager.Device.Modem',
|
|
|
|
'org.freedesktop.NetworkManager.Device.OlpcMesh',
|
2019-01-28 14:21:59 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.OvsBridge',
|
2017-11-25 10:39:06 +00:00
|
|
|
'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',
|
2019-12-05 09:36:54 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Vrf',
|
2017-11-25 10:39:06 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Vxlan',
|
|
|
|
'org.freedesktop.NetworkManager.Device.WiMax',
|
2019-01-28 14:21:59 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.WifiP2P',
|
2018-03-13 13:42:38 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.WireGuard',
|
2017-11-25 10:39:06 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Wired',
|
|
|
|
'org.freedesktop.NetworkManager.Device.Wireless',
|
2019-01-28 14:21:59 +00:00
|
|
|
'org.freedesktop.NetworkManager.Device.Wpan',
|
2017-11-25 10:39:06 +00:00
|
|
|
'org.freedesktop.NetworkManager.DnsManager',
|
|
|
|
'org.freedesktop.NetworkManager.IP4Config',
|
|
|
|
'org.freedesktop.NetworkManager.IP6Config',
|
|
|
|
'org.freedesktop.NetworkManager.PPP',
|
|
|
|
'org.freedesktop.NetworkManager.SecretAgent',
|
|
|
|
'org.freedesktop.NetworkManager.Settings',
|
2019-01-28 14:21:59 +00:00
|
|
|
'org.freedesktop.NetworkManager.Settings.Connection',
|
2017-11-25 10:39:06 +00:00
|
|
|
'org.freedesktop.NetworkManager.VPN.Connection',
|
|
|
|
'org.freedesktop.NetworkManager.VPN.Plugin',
|
2018-10-18 10:50:20 +00:00
|
|
|
'org.freedesktop.NetworkManager.WiMax.Nsp',
|
2019-01-28 14:21:59 +00:00
|
|
|
'org.freedesktop.NetworkManager.WifiP2PPeer',
|
2017-11-25 10:39:06 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
ifaces_xmls = []
|
|
|
|
sources = []
|
2018-09-23 14:30:18 +00:00
|
|
|
introspection_files = []
|
2019-11-19 17:17:59 +00:00
|
|
|
headers = []
|
2017-11-25 10:39:06 +00:00
|
|
|
|
|
|
|
foreach iface: ifaces
|
|
|
|
iface_xml = iface + '.xml'
|
|
|
|
ifaces_xmls += files(iface_xml)
|
|
|
|
|
2018-09-23 14:30:18 +00:00
|
|
|
res = gnome.gdbus_codegen(
|
2017-11-25 10:39:06 +00:00
|
|
|
iface,
|
|
|
|
iface_xml,
|
|
|
|
interface_prefix: 'org.freedesktop.NetworkManager',
|
|
|
|
namespace: 'NMDBus',
|
2018-10-18 10:50:20 +00:00
|
|
|
docbook: 'dbus',
|
2017-11-25 10:39:06 +00:00
|
|
|
)
|
|
|
|
|
2018-09-23 14:30:18 +00:00
|
|
|
sources += res
|
|
|
|
|
2019-04-18 10:45:50 +00:00
|
|
|
if gio_unix_dep.version().version_compare('>= 2.51.3')
|
|
|
|
dbus_iface_xml_path = join_paths(meson.current_build_dir(), 'dbus-' + iface_xml)
|
|
|
|
else
|
2019-08-28 09:54:11 +00:00
|
|
|
dbus_iface_xml_path = join_paths(build_root, 'dbus-' + iface_xml)
|
2019-04-18 10:45:50 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
content_files += dbus_iface_xml_path
|
2018-09-23 14:30:18 +00:00
|
|
|
|
|
|
|
# res is an array only since 0.46. Documentation won't work with
|
|
|
|
# older versions
|
|
|
|
if meson.version().version_compare('>= 0.46.0')
|
2019-04-18 10:45:50 +00:00
|
|
|
introspection_files += [ [res[2], dbus_iface_xml_path] ]
|
2019-11-19 17:17:59 +00:00
|
|
|
headers += res[1]
|
2018-09-23 14:30:18 +00:00
|
|
|
endif
|
2019-04-18 10:45:50 +00:00
|
|
|
|
2017-11-25 10:39:06 +00:00
|
|
|
endforeach
|
|
|
|
|
|
|
|
install_data(
|
|
|
|
ifaces_xmls,
|
2019-08-29 06:09:09 +00:00
|
|
|
install_dir: dbus_interfaces_dir,
|
2017-11-25 10:39:06 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
libnmdbus = static_library(
|
|
|
|
'nmdbus',
|
|
|
|
sources: sources,
|
|
|
|
include_directories: top_inc,
|
introspection: avoid compiler warning in generated introspection files
Disable "-Wincompatible-pointer-types-discards-qualifiers" warning, as
this breaks build of the gdbus-codegen files.
With glib2-2.67.0-1.fc34.x86_64.rpm, clang-11.0.0-2.fc34.x86_64.rpm, we
get a failure to build generated code:
introspection/org.freedesktop.NetworkManager.AccessPoint.c:438:1: error: passing 'typeof (*(&g_define_type_id__volatile)) *' (aka 'volatile unsigned long *') to parameter of type 'gsize *' (aka 'unsigned long *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
G_DEFINE_INTERFACE (NMDBusAccessPoint, nmdbus_access_point, G_TYPE_OBJECT)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1784:47: note: expanded from macro 'G_DEFINE_INTERFACE'
#define G_DEFINE_INTERFACE(TN, t_n, T_P) G_DEFINE_INTERFACE_WITH_CODE(TN, t_n, T_P, ;)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1803:61: note: expanded from macro 'G_DEFINE_INTERFACE_WITH_CODE'
#define G_DEFINE_INTERFACE_WITH_CODE(TN, t_n, T_P, _C_) _G_DEFINE_INTERFACE_EXTENDED_BEGIN(TN, t_n, T_P) {_C_;} _G_DEFINE_INTERFACE_EXTENDED_END()
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2042:7: note: expanded from macro '_G_DEFINE_INTERFACE_EXTENDED_BEGIN'
if (g_once_init_enter (&g_define_type_id__volatile)) \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gthread.h:260:7: note: expanded from macro 'g_once_init_enter'
(!g_atomic_pointer_get (location) && \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gatomic.h:112:38: note: expanded from macro 'g_atomic_pointer_get'
__atomic_load (gapg_temp_atomic, &gapg_temp_newval, __ATOMIC_SEQ_CST); \
^~~~~~~~~~~~~~~~~
introspection/org.freedesktop.NetworkManager.AccessPoint.c:944:1: error: passing 'typeof (*(&g_define_type_id__volatile)) *' (aka 'volatile unsigned long *') to parameter of type 'gsize *' (aka 'unsigned long *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
G_DEFINE_TYPE_WITH_CODE (NMDBusAccessPointProxy, nmdbus_access_point_proxy, G_TYPE_DBUS_PROXY,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1615:56: note: expanded from macro 'G_DEFINE_TYPE_WITH_CODE'
#define G_DEFINE_TYPE_WITH_CODE(TN, t_n, T_P, _C_) _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, 0) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2032:3: note: expanded from macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
_G_DEFINE_TYPE_EXTENDED_BEGIN_REGISTER(TypeName, type_name, TYPE_PARENT, flags) \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2000:7: note: expanded from macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_REGISTER'
if (g_once_init_enter (&g_define_type_id__volatile)) \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gthread.h:260:7: note: expanded from macro 'g_once_init_enter'
(!g_atomic_pointer_get (location) && \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gatomic.h:112:38: note: expanded from macro 'g_atomic_pointer_get'
__atomic_load (gapg_temp_atomic, &gapg_temp_newval, __ATOMIC_SEQ_CST); \
^~~~~~~~~~~~~~~~~
introspection/org.freedesktop.NetworkManager.AccessPoint.c:1729:1: error: passing 'typeof (*(&g_define_type_id__volatile)) *' (aka 'volatile unsigned long *') to parameter of type 'gsize *' (aka 'unsigned long *') discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
G_DEFINE_TYPE_WITH_CODE (NMDBusAccessPointSkeleton, nmdbus_access_point_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1615:56: note: expanded from macro 'G_DEFINE_TYPE_WITH_CODE'
#define G_DEFINE_TYPE_WITH_CODE(TN, t_n, T_P, _C_) _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, 0) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2032:3: note: expanded from macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
_G_DEFINE_TYPE_EXTENDED_BEGIN_REGISTER(TypeName, type_name, TYPE_PARENT, flags) \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2000:7: note: expanded from macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_REGISTER'
if (g_once_init_enter (&g_define_type_id__volatile)) \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gthread.h:260:7: note: expanded from macro 'g_once_init_enter'
(!g_atomic_pointer_get (location) && \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gatomic.h:112:38: note: expanded from macro 'g_atomic_pointer_get'
__atomic_load (gapg_temp_atomic, &gapg_temp_newval, __ATOMIC_SEQ_CST); \
^~~~~~~~~~~~~~~~~
(cherry picked from commit 03d9ec27face7f54e15f6fe6532c59f8b66bb6b4)
2020-11-02 08:12:10 +00:00
|
|
|
c_args: introspection_extra_cflags,
|
2021-02-24 09:54:55 +00:00
|
|
|
dependencies: glib_dep,
|
2017-11-25 10:39:06 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
libnmdbus_dep = declare_dependency(
|
2019-11-19 17:17:59 +00:00
|
|
|
sources: headers,
|
2021-02-24 09:54:55 +00:00
|
|
|
include_directories: top_inc,
|
|
|
|
dependencies: glib_dep,
|
2017-11-25 10:39:06 +00:00
|
|
|
)
|