summary refs log tree commit diff
path: root/libnm-core/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'libnm-core/meson.build')
-rw-r--r--libnm-core/meson.build143
1 files changed, 69 insertions, 74 deletions
diff --git a/libnm-core/meson.build b/libnm-core/meson.build
index da74fb04..ec9fb8ce 100644
--- a/libnm-core/meson.build
+++ b/libnm-core/meson.build
@@ -1,23 +1,25 @@
-# SPDX-License-Identifier: LGPL-2.1+
+# SPDX-License-Identifier: LGPL-2.1-or-later
 
 libnm_core_inc = include_directories('.')
 
+nm_version_macro_header = configure_file(
+  input: 'nm-version-macros.h.in',
+  output: '@BASENAME@',
+  configuration: data_conf,
+)
+
 libnm_core_nm_default_dep = declare_dependency(
   sources: nm_version_macro_header,
   include_directories: libnm_core_inc,
   dependencies: glib_nm_default_dep,
 )
 
-common_c_flags = [
-  '-DG_LOG_DOMAIN="@0@"'.format(libnm_name),
-  '-DNETWORKMANAGER_COMPILATION=NM_NETWORKMANAGER_COMPILATION_LIBNM_CORE',
-]
-
 libnm_core_headers = files(
   'nm-connection.h',
   'nm-core-types.h',
   'nm-dbus-interface.h',
   'nm-errors.h',
+  'nm-keyfile.h',
   'nm-setting-6lowpan.h',
   'nm-setting-8021x.h',
   'nm-setting-adsl.h',
@@ -32,6 +34,7 @@ libnm_core_headers = files(
   'nm-setting-ethtool.h',
   'nm-setting-generic.h',
   'nm-setting-gsm.h',
+  'nm-setting-hostname.h',
   'nm-setting-infiniband.h',
   'nm-setting-ip-config.h',
   'nm-setting-ip-tunnel.h',
@@ -42,8 +45,9 @@ libnm_core_headers = files(
   'nm-setting-match.h',
   'nm-setting-olpc-mesh.h',
   'nm-setting-ovs-bridge.h',
-  'nm-setting-ovs-interface.h',
   'nm-setting-ovs-dpdk.h',
+  'nm-setting-ovs-external-ids.h',
+  'nm-setting-ovs-interface.h',
   'nm-setting-ovs-patch.h',
   'nm-setting-ovs-port.h',
   'nm-setting-ppp.h',
@@ -56,6 +60,7 @@ libnm_core_headers = files(
   'nm-setting-team.h',
   'nm-setting-tun.h',
   'nm-setting-user.h',
+  'nm-setting-veth.h',
   'nm-setting-vlan.h',
   'nm-setting-vpn.h',
   'nm-setting-vrf.h',
@@ -76,13 +81,11 @@ libnm_core_headers = files(
   'nm-vpn-plugin-info.h',
 )
 
-enum_types = 'nm-core-enum-types'
-
 libnm_core_enum_sources = gnome.mkenums_simple(
-  enum_types,
+  'nm-core-enum-types',
   sources: libnm_core_headers + [nm_version_macro_header],
   identifier_prefix: nm_id_prefix,
-  body_prefix: '#include "nm-default.h"',
+  body_prefix: '#include "libnm-core/nm-default-libnm-core.h"',
   install_header: true,
   install_dir: libnm_pkgincludedir,
 )
@@ -91,30 +94,37 @@ libnm_libnm_core_intern = static_library(
   'nm-libnm-core-intern',
   sources: files(
     'nm-libnm-core-intern/nm-auth-subject.c',
-    'nm-libnm-core-intern/nm-ethtool-utils.c',
     'nm-libnm-core-intern/nm-libnm-core-utils.c',
   ) + [libnm_core_enum_sources[1]],
-  dependencies: libnm_core_nm_default_dep,
-  c_args: common_c_flags,
+  dependencies: [
+    libnm_core_nm_default_dep,
+    libnm_base_dep,
+  ],
+  c_args: [
+    '-DG_LOG_DOMAIN="libnm"',
+  ],
 )
 
 libnm_libnm_core_intern_dep = declare_dependency(
   sources: [libnm_core_enum_sources[1], nm_version_macro_header],
   include_directories: [libnm_core_inc, shared_inc],
-  dependencies: libnm_utils_base_dep,
+  dependencies: [
+    libnm_glib_aux_dep,
+    libnm_base_dep,
+  ],
   link_with: libnm_libnm_core_intern,
 )
 
-deps = [
-  crypto_dep,
-  libnm_utils_base_dep,
-]
-
 libnm_crypto = static_library(
   'nm-crypto',
   sources: 'nm-crypto-@0@.c'.format(crypto),
-  dependencies: deps,
-  c_args: common_c_flags,
+  dependencies: [
+    crypto_dep,
+    libnm_glib_aux_dep,
+  ],
+  c_args: [
+    '-DG_LOG_DOMAIN="libnm"',
+  ],
 )
 
 libnm_core_settings_sources = files(
@@ -132,6 +142,7 @@ libnm_core_settings_sources = files(
   'nm-setting-ethtool.c',
   'nm-setting-generic.c',
   'nm-setting-gsm.c',
+  'nm-setting-hostname.c',
   'nm-setting-infiniband.c',
   'nm-setting-ip-config.c',
   'nm-setting-ip-tunnel.c',
@@ -142,8 +153,9 @@ libnm_core_settings_sources = files(
   'nm-setting-match.c',
   'nm-setting-olpc-mesh.c',
   'nm-setting-ovs-bridge.c',
-  'nm-setting-ovs-interface.c',
   'nm-setting-ovs-dpdk.c',
+  'nm-setting-ovs-external-ids.c',
+  'nm-setting-ovs-interface.c',
   'nm-setting-ovs-patch.c',
   'nm-setting-ovs-port.c',
   'nm-setting-ppp.c',
@@ -156,6 +168,7 @@ libnm_core_settings_sources = files(
   'nm-setting-team.c',
   'nm-setting-tun.c',
   'nm-setting-user.c',
+  'nm-setting-veth.c',
   'nm-setting-vlan.c',
   'nm-setting-vpn.c',
   'nm-setting-vrf.c',
@@ -174,6 +187,9 @@ libnm_core_sources = libnm_core_settings_sources + files(
   'nm-crypto.c',
   'nm-dbus-utils.c',
   'nm-errors.c',
+  'nm-keyfile-utils.c',
+  'nm-keyfile.c',
+  'nm-meta-setting-base-impl.c',
   'nm-property-compare.c',
   'nm-setting.c',
   'nm-simple-connection.c',
@@ -183,27 +199,23 @@ libnm_core_sources = libnm_core_settings_sources + files(
   'nm-vpn-plugin-info.c',
 )
 
-deps = [
-  dl_dep,
-  libnm_systemd_shared_dep,
-  libnm_utils_base_dep,
-  uuid_dep,
-]
-
-links = [
-  libnm_crypto,
-  libnm_libnm_core_intern,
-]
-
-libnm_core_c_args = common_c_flags
-
 libnm_core = static_library(
   'nm-core',
-  sources: libnm_core_sources + libnm_core_enum_sources + nm_meta_setting_source + [nm_version_macro_header],
+  sources: libnm_core_sources + libnm_core_enum_sources + [nm_version_macro_header],
   include_directories: top_inc,
-  dependencies: deps,
-  c_args: libnm_core_c_args,
-  link_with: links,
+  dependencies: [
+    dl_dep,
+    libnm_systemd_shared_dep,
+    libnm_glib_aux_dep,
+    uuid_dep,
+  ],
+  c_args: [
+    '-DG_LOG_DOMAIN="libnm"',
+  ],
+  link_with: [
+    libnm_crypto,
+    libnm_libnm_core_intern,
+  ],
 )
 
 libnm_core_dep = declare_dependency(
@@ -213,53 +225,30 @@ libnm_core_dep = declare_dependency(
   link_with: libnm_core,
 )
 
-c_flags = [
-  '-DG_LOG_DOMAIN="@0@"'.format(libnm_name),
-  '-DNETWORKMANAGER_COMPILATION=(NM_NETWORKMANAGER_COMPILATION_WITH_GLIB|NM_NETWORKMANAGER_COMPILATION_WITH_GLIB_I18N_LIB)',
-]
-
 libnm_libnm_core_aux = static_library(
   'nm-libnm-core-aux',
   sources: files(
     'nm-libnm-core-aux/nm-libnm-core-aux.c',
   ) + [libnm_core_enum_sources[1]],
-  dependencies: libnm_utils_base_dep,
-  c_args: c_flags,
-  link_with: libnm_libnm_core_intern,
-)
-
-libnm_libnm_core_aux_dep = declare_dependency(
-  sources: [libnm_core_enum_sources[1], nm_version_macro_header],
-  include_directories: [libnm_core_inc, shared_inc],
-  dependencies: glib_dep,
-  link_with: libnm_libnm_core_aux,
-)
-
-libnm_keyfile = static_library(
-  'nm-keyfile',
-  sources: files(
-    'nm-keyfile/nm-keyfile-utils.c',
-    'nm-keyfile/nm-keyfile.c',
-  ) + [libnm_core_enum_sources[1]],
-  dependencies: libnm_utils_base_dep,
+  dependencies: libnm_glib_aux_dep,
   c_args: [
-    '-DG_LOG_DOMAIN="@0@"'.format(libnm_name),
-    '-DNETWORKMANAGER_COMPILATION=(NM_NETWORKMANAGER_COMPILATION_WITH_LIBNM_CORE_INTERNAL|NM_NETWORKMANAGER_COMPILATION_WITH_GLIB|NM_NETWORKMANAGER_COMPILATION_WITH_GLIB_I18N_LIB)',
+    '-DG_LOG_DOMAIN="libnm"',
+  ],
+  link_with: [
+    libnm_libnm_core_intern,
+    libnm_base,
   ],
-  link_with: libnm_libnm_core_intern,
 )
 
-libnm_keyfile_dep = declare_dependency(
+libnm_libnm_core_aux_dep = declare_dependency(
   sources: [libnm_core_enum_sources[1], nm_version_macro_header],
   include_directories: [libnm_core_inc, shared_inc],
   dependencies: glib_dep,
-  link_with: libnm_keyfile,
+  link_with: libnm_libnm_core_aux,
 )
 
-enums_to_docbook = join_paths(source_root, 'tools', 'enums-to-docbook.pl')
-
 docbooks = [
-  ['nm-dbus-types', 'nm-dbus-interface.h', 'NetworkManager D-Bus API Types'],
+  ['nm-dbus-types',     'nm-dbus-interface.h',     'NetworkManager D-Bus API Types'],
   ['nm-vpn-dbus-types', 'nm-vpn-dbus-interface.h', 'VPN Plugin D-Bus API Types'],
 ]
 
@@ -271,7 +260,13 @@ foreach docbook: docbooks
     input: docbook[1],
     output: output,
     capture: true,
-    command: [perl, enums_to_docbook, docbook[0], docbook[2], '@INPUT@'],
+    command: [
+      perl,
+      join_paths(source_root, 'tools', 'enums-to-docbook.pl'),
+      docbook[0],
+      docbook[2],
+      '@INPUT@',
+    ],
     # FIXME: gtkdoc does not depend directly on this.
     #        https://github.com/mesonbuild/meson/pull/2806
     build_by_default: true,