From 0e8be2aaa8d794ff8897955c0045f7dbba842713 Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Sat, 8 Sep 2018 11:52:46 +0200 Subject: [PATCH 1/4] gitignore: Fix *.stamp ignore ripgrep complains about the invalid `**`. (cherry picked from commit 1fad494c3464ded6c59cd321a2c6e5f88064e757) --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 5d58ff3074..380f73c549 100644 --- a/.gitignore +++ b/.gitignore @@ -8,7 +8,7 @@ *.la *-*.gir *.typelib -**.stamp +*.stamp .dirstamp *-enum-types.[ch] *-glue.h From 461f2dda60fb6ef27b1103a0f9ff32088a7e97a0 Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Sat, 8 Sep 2018 12:09:30 +0200 Subject: [PATCH 2/4] meson: Use libexecdir for dnssec-trigger-script fallback Use an `if` to keep line length down. (cherry picked from commit 5b042b16ca19931df887709570b13a4dada374ba) --- meson.build | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build index 68ecb0ecd8..f049a5d2d1 100644 --- a/meson.build +++ b/meson.build @@ -652,7 +652,11 @@ config_h.set_quoted('DNSMASQ_PATH', find_program(get_option('dnsmasq')).path()) # dnssec-trigger-script path dnssec_trigger_script = find_program(get_option('dnssec_trigger'), required: false) -config_h.set_quoted('DNSSEC_TRIGGER_SCRIPT', (dnssec_trigger_script.found() ? dnssec_trigger_script.path() : '/usr/libexec/dnssec-trigger-script')) +if dnssec_trigger_script.found() + config_h.set_quoted('DNSSEC_TRIGGER_SCRIPT', dnssec_trigger_script.path()) +else + config_h.set_quoted('DNSSEC_TRIGGER_SCRIPT', join_paths(nm_libexecdir, 'dnssec-trigger-script')) +endif # system CA certificates path system_ca_path = get_option('system_ca_path') From 1ac1e25847493f7289da1af7ca7cfb368c0bf61d Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Sat, 8 Sep 2018 12:01:00 +0200 Subject: [PATCH 3/4] meson: Fix libnm-util build This was broken by e01f7f2c6dccad7a950c1af4c31737a9628e809e. Port the commit's changes from libnm to libnm-util. (cherry picked from commit 4bfd0bab0d15d0b5d15f53c5b76e980a1aab1efd) --- libnm-util/meson.build | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/libnm-util/meson.build b/libnm-util/meson.build index 55df550175..1e30fd9adf 100644 --- a/libnm-util/meson.build +++ b/libnm-util/meson.build @@ -57,7 +57,6 @@ libnm_utils_enum = gnome.mkenums( sources = files( 'crypto.c', - 'crypto_' + crypto + '.c', 'nm-connection.c', 'nm-param-spec-specialized.c', 'nm-setting-8021x.c', @@ -93,7 +92,6 @@ sources = files( sources += shared_files_libnm_util deps = [ - crypto_dep, dbus_dep, dbus_glib_dep, shared_dep, @@ -109,6 +107,32 @@ cflags = common_cflags + [ '-DG_LOG_DOMAIN="@0@"'.format(libnm_util_name) ] +if crypto_gnutls_dep.found() + libnm_util_crypto_gnutls = static_library( + 'nm-util-crypto-gnutls', + sources: [ 'crypto_gnutls.c' ], + dependencies: deps + [ crypto_gnutls_dep ], + c_args: cflags + ) +endif + +if crypto_nss_dep.found() + libnm_util_crypto_nss = static_library( + 'nm-util-crypto-nss', + sources: [ 'crypto_nss.c' ], + dependencies: deps + [ crypto_nss_dep ], + c_args: cflags + ) +endif + +if crypto == 'gnutls' + libnm_util_crypto = libnm_util_crypto_gnutls +elif crypto == 'nss' + libnm_util_crypto = libnm_util_crypto_nss +else + error('bug') +endif + linker_script = join_paths(meson.current_source_dir(), 'libnm-util.ver') libnm_util = shared_library( @@ -121,6 +145,7 @@ libnm_util = shared_library( '-Wl,--version-script,@0@'.format(linker_script), ], link_depends: linker_script, + link_with: libnm_util_crypto, install: true ) @@ -175,11 +200,9 @@ run_target( sources = files( 'crypto.c', - 'crypto_' + crypto + '.c' ) deps = [ - crypto_dep, shared_dep ] @@ -187,6 +210,7 @@ libtest_crypto = static_library( 'test-crypto', sources: sources, dependencies: deps, + link_with: libnm_util_crypto, c_args: cflags ) From be679e06529165ff99f70972ec76b46110e7c187 Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Sat, 8 Sep 2018 12:58:57 +0200 Subject: [PATCH 4/4] meson: Fix vapi build Apparently vapigen can't find the NetworkManager-1.0.gir belonging to libnm-util.vapi. (cherry picked from commit 44f14e969bd4bf56efac28d01c0f9823abee0e5c) --- vapi/meson.build | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/vapi/meson.build b/vapi/meson.build index 835a0b9aaf..37e5090c5a 100644 --- a/vapi/meson.build +++ b/vapi/meson.build @@ -18,12 +18,11 @@ if enable_libnm_glib install: true ) - packages += libnm_util_vapi - gnome.generate_vapi( libnm_glib_name, sources: libnm_glib_gir[0], - packages: packages, + packages: packages + [libnm_util_vapi], + gir_dirs: [join_paths(meson.current_build_dir(), '..', 'libnm-util')], install: true ) endif