From 6b7264e4aaf63bf877a211f70449354f2244ec45 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Wed, 15 May 2019 14:50:40 +0200 Subject: build/meson: introduce libnm/liblibnm.la as static library for libnm/libnm.la Same as done for autotools. --- libnm/meson.build | 62 +++++++++++++++++++++++++++++++------------------ libnm/tests/meson.build | 18 +++++++------- 2 files changed, 49 insertions(+), 31 deletions(-) (limited to 'libnm') diff --git a/libnm/meson.build b/libnm/meson.build index 84575425f0..3aa182dd4e 100644 --- a/libnm/meson.build +++ b/libnm/meson.build @@ -5,22 +5,6 @@ cflags = [ '-DNETWORKMANAGER_COMPILATION=NM_NETWORKMANAGER_COMPILATION_LIBNM', ] -libnm_utils_sources = files('nm-libnm-utils.c') - -deps = [ - libnmdbus_dep, - shared_nm_glib_aux_dep, - libnm_core_dep, -] - -libnm_utils = static_library( - 'nm-utils', - sources: libnm_utils_sources, - include_directories: libnm_core_inc, - dependencies: deps, - c_args: cflags, -) - libnm_headers = files( 'NetworkManager.h', 'nm-access-point.h', @@ -129,6 +113,7 @@ libnm_sources = files( 'nm-ip-config.c', 'nm-ip4-config.c', 'nm-ip6-config.c', + 'nm-libnm-utils.c', 'nm-manager.c', 'nm-object.c', 'nm-remote-connection.c', @@ -144,13 +129,12 @@ libnm_sources = files( linker_script = join_paths(meson.current_source_dir(), 'libnm.ver') - -libnm = shared_library( - 'nm', +liblibnm = static_library( + 'libnm', sources: libnm_sources + libnm_enum, - version: libnm_version, include_directories: libnm_core_inc, dependencies: [ + libnmdbus_dep, dl_dep, libudev_dep, shared_nm_glib_aux_dep, @@ -159,8 +143,36 @@ libnm = shared_library( libnm_systemd_shared_no_logging_dep, ], c_args: cflags, - link_with: libnm_utils, - link_whole: libnm_core, +) + +liblibnm_dep = declare_dependency( + sources: libnm_enum[1], + include_directories: [ + libnm_inc, + libnm_core_inc, + ], + dependencies: [ + libnm_core_dep, + libnm_systemd_shared_no_logging_dep, + libnmdbus_dep, + shared_nm_glib_aux_dep, + libudev_dep, + dl_dep, + uuid_dep, + ], +) + +libnm = shared_library( + 'nm', + version: libnm_version, + link_whole: [ + liblibnm, + libnm_core, + libnm_systemd_logging_stub, + libnmdbus, + shared_nm_glib_aux, + ], + dependencies: liblibnm_dep, link_args: [ '-Wl,--version-script,@0@'.format(linker_script), ], @@ -170,7 +182,10 @@ libnm = shared_library( libnm_dep = declare_dependency( sources: libnm_enum[1], - include_directories: libnm_inc, + include_directories: [ + libnm_inc, + libnm_core_inc, + ], link_with: libnm, ) @@ -209,6 +224,7 @@ if enable_introspection extra_args: cflags, header: 'NetworkManager.h', install: true, + depends: libnm_dep, ) generate_plugin_docs = join_paths(meson.current_source_dir(), 'generate-plugin-docs.pl') diff --git a/libnm/tests/meson.build b/libnm/tests/meson.build index 7cc19af322..5b72a24fae 100644 --- a/libnm/tests/meson.build +++ b/libnm/tests/meson.build @@ -1,8 +1,8 @@ test_units = [ - ['test-libnm', [libnm_utils, libnm_core], 30], - ['test-nm-client', [], 90], - ['test-remote-settings-client', [], 90], - ['test-secret-agent', [], 90], + ['test-libnm', 30], + ['test-nm-client', 90], + ['test-remote-settings-client', 90], + ['test-secret-agent', 90], ] cflags = [ @@ -18,18 +18,20 @@ foreach test_unit: test_units shared_nm_test_utils_impl_c, ], dependencies: [ - libnm_dep, - libnm_core_dep, + liblibnm_dep, libnm_systemd_shared_no_logging_dep, ], c_args: cflags, - link_with: test_unit[1], + link_with: [ + liblibnm, + libnm_core, + ], ) test( test_unit[0], test_script, - timeout: test_unit[2], + timeout: test_unit[1], args: test_args + [exe.full_path()], ) endforeach -- cgit v1.2.1