From b434b9ec0794fc62a2469445d17debf645ba24cc Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Sun, 14 Apr 2019 13:36:32 +0200 Subject: [PATCH] shared: split C-only helper "shared/nm-std-aux" utils out of "shared/nm-utils" "shared/nm-utils" contains general purpose utility functions that only depend on glib (and extend glib with some helper functions). We will also add code that does not use glib, hence it would be good if the part of "shared/nm-utils" that does not depend on glib, could be used by these future projects. Also, we use the term "utils" everywhere. While that covers the purpose and content well, having everything called "nm-something-utils" is not great. Instead, call this "nm-std-aux", inspired by "c-util/c-stdaux". --- Makefile.am | 35 ++++++++++++++++--- libnm-core/tests/test-general.c | 2 +- shared/meson.build | 27 ++++++++++++-- shared/{nm-utils => nm-std-aux}/c-list-util.c | 0 shared/{nm-utils => nm-std-aux}/c-list-util.h | 0 shared/{nm-utils => nm-std-aux}/unaligned.h | 0 shared/nm-utils/nm-dedup-multi.h | 2 +- shared/nm-utils/tests/test-shared-general.c | 4 +-- shared/systemd/sd-adapt-shared/unaligned.h | 2 +- src/devices/nm-device.c | 2 +- src/devices/nm-lldp-listener.c | 2 +- src/dhcp/nm-dhcp-systemd.c | 2 +- src/nm-core-utils.c | 2 +- src/platform/nm-linux-platform.c | 3 +- src/platform/nm-netlink.h | 2 +- src/platform/nmp-rules-manager.c | 2 +- 16 files changed, 68 insertions(+), 19 deletions(-) rename shared/{nm-utils => nm-std-aux}/c-list-util.c (100%) rename shared/{nm-utils => nm-std-aux}/c-list-util.h (100%) rename shared/{nm-utils => nm-std-aux}/unaligned.h (100%) diff --git a/Makefile.am b/Makefile.am index 7796836e32..0deb49ea6a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -287,6 +287,35 @@ shared_libnacd_la_LIBADD = \ ############################################################################### +noinst_LTLIBRARIES += shared/nm-std-aux/libnm-std-aux.la + +shared_nm_std_aux_libnm_std_aux_la_CPPFLAGS = \ + $(dflt_cppflags) \ + -I$(srcdir)/shared \ + $(CODE_COVERAGE_CFLAGS) \ + $(SANITIZER_LIB_CFLAGS) \ + -DG_LOG_DOMAIN=\""libnm"\" \ + -DNETWORKMANAGER_COMPILATION='0' \ + $(NULL) + +shared_nm_std_aux_libnm_std_aux_la_SOURCES = \ + shared/c-list/src/c-list.h \ + shared/nm-std-aux/c-list-util.c \ + shared/nm-std-aux/c-list-util.h \ + shared/nm-std-aux/unaligned.h \ + $(NULL) + +shared_nm_std_aux_libnm_std_aux_la_LDFLAGS = \ + $(CODE_COVERAGE_LDFLAGS) \ + $(SANITIZER_LIB_LDFLAGS) \ + $(NULL) + +shared_nm_std_aux_libnm_std_aux_la_LIBADD = \ + shared/libcsiphash.la \ + $(NULL) + +############################################################################### + shared_nm_utils_libnm_utils_cppflags = \ $(dflt_cppflags) \ -I$(srcdir)/shared \ @@ -304,9 +333,6 @@ shared_nm_utils_libnm_utils_base_la_CPPFLAGS = \ $(NULL) shared_nm_utils_libnm_utils_base_la_SOURCES = \ - shared/c-list/src/c-list.h \ - shared/nm-utils/c-list-util.c \ - shared/nm-utils/c-list-util.h \ shared/nm-utils/nm-c-list.h \ shared/nm-utils/nm-dedup-multi.c \ shared/nm-utils/nm-dedup-multi.h \ @@ -330,7 +356,6 @@ shared_nm_utils_libnm_utils_base_la_SOURCES = \ shared/nm-utils/nm-shared-utils.h \ shared/nm-utils/nm-time-utils.c \ shared/nm-utils/nm-time-utils.h \ - shared/nm-utils/unaligned.h \ $(NULL) shared_nm_utils_libnm_utils_base_la_LDFLAGS = \ @@ -339,7 +364,7 @@ shared_nm_utils_libnm_utils_base_la_LDFLAGS = \ $(NULL) shared_nm_utils_libnm_utils_base_la_LIBADD = \ - shared/libcsiphash.la \ + shared/nm-std-aux/libnm-std-aux.la \ $(GLIB_LIBS) \ $(NULL) diff --git a/libnm-core/tests/test-general.c b/libnm-core/tests/test-general.c index 64f937cbcf..5cce70e05d 100644 --- a/libnm-core/tests/test-general.c +++ b/libnm-core/tests/test-general.c @@ -23,7 +23,7 @@ #include "nm-default.h" -#include "nm-utils/c-list-util.h" +#include "nm-std-aux/c-list-util.h" #include "nm-utils/nm-enum-utils.h" #include "nm-utils.h" diff --git a/shared/meson.build b/shared/meson.build index b4535e0c62..5f5404b509 100644 --- a/shared/meson.build +++ b/shared/meson.build @@ -102,6 +102,29 @@ shared_nm_utils_nm_vpn_plugin_utils_c = files('nm-utils/nm-vpn-plugin-utils.c') ############################################################################### +shared_nm_std_aux = static_library( + 'nm-std-aux', + sources: files('nm-std-aux/c-list-util.c'), + c_args: [ + '-DG_LOG_DOMAIN="@0@"'.format(libnm_name), + '-DNETWORKMANAGER_COMPILATION=0', + ], + include_directories: [ + top_inc, + shared_inc, + ], + dependencies: [ + ], +) + +shared_nm_std_aux_dep = declare_dependency( + link_with: shared_nm_std_aux, + include_directories: [ + top_inc, + shared_inc, + ], +) + shared_nm_utils_c_args = [ '-DG_LOG_DOMAIN="@0@"'.format(libnm_name), '-DNETWORKMANAGER_COMPILATION=(NM_NETWORKMANAGER_COMPILATION_GLIB|NM_NETWORKMANAGER_COMPILATION_WITH_GLIB_I18N_LIB)', @@ -109,8 +132,7 @@ shared_nm_utils_c_args = [ shared_nm_utils_base = static_library( 'nm-utils-base', - sources: files('nm-utils/c-list-util.c', - 'nm-utils/nm-dedup-multi.c', + sources: files('nm-utils/nm-dedup-multi.c', 'nm-utils/nm-enum-utils.c', 'nm-utils/nm-errno.c', 'nm-utils/nm-hash-utils.c', @@ -126,6 +148,7 @@ shared_nm_utils_base = static_library( ], dependencies: [ glib_dep, + shared_nm_std_aux_dep, ], ) diff --git a/shared/nm-utils/c-list-util.c b/shared/nm-std-aux/c-list-util.c similarity index 100% rename from shared/nm-utils/c-list-util.c rename to shared/nm-std-aux/c-list-util.c diff --git a/shared/nm-utils/c-list-util.h b/shared/nm-std-aux/c-list-util.h similarity index 100% rename from shared/nm-utils/c-list-util.h rename to shared/nm-std-aux/c-list-util.h diff --git a/shared/nm-utils/unaligned.h b/shared/nm-std-aux/unaligned.h similarity index 100% rename from shared/nm-utils/unaligned.h rename to shared/nm-std-aux/unaligned.h diff --git a/shared/nm-utils/nm-dedup-multi.h b/shared/nm-utils/nm-dedup-multi.h index 845b4c3ef5..82c6f1e955 100644 --- a/shared/nm-utils/nm-dedup-multi.h +++ b/shared/nm-utils/nm-dedup-multi.h @@ -23,7 +23,7 @@ #define __NM_DEDUP_MULTI_H__ #include "nm-obj.h" -#include "c-list-util.h" +#include "nm-std-aux/c-list-util.h" /*****************************************************************************/ diff --git a/shared/nm-utils/tests/test-shared-general.c b/shared/nm-utils/tests/test-shared-general.c index f56bd15e50..067e9f05d7 100644 --- a/shared/nm-utils/tests/test-shared-general.c +++ b/shared/nm-utils/tests/test-shared-general.c @@ -21,9 +21,9 @@ #include "nm-default.h" -#include "nm-utils/nm-time-utils.h" +#include "nm-std-aux/unaligned.h" #include "nm-utils/nm-random-utils.h" -#include "nm-utils/unaligned.h" +#include "nm-utils/nm-time-utils.h" #include "nm-utils/nm-test-utils.h" diff --git a/shared/systemd/sd-adapt-shared/unaligned.h b/shared/systemd/sd-adapt-shared/unaligned.h index 17dc04446c..ac1a6928c5 100644 --- a/shared/systemd/sd-adapt-shared/unaligned.h +++ b/shared/systemd/sd-adapt-shared/unaligned.h @@ -1,3 +1,3 @@ #pragma once -#include "nm-utils/unaligned.h" +#include "nm-std-aux/unaligned.h" diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index 253740a225..80976810f4 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -36,9 +36,9 @@ #include #include +#include "nm-std-aux/unaligned.h" #include "nm-utils/nm-dedup-multi.h" #include "nm-utils/nm-random-utils.h" -#include "nm-utils/unaligned.h" #include "nm-ethtool-utils.h" #include "nm-common-macros.h" diff --git a/src/devices/nm-lldp-listener.c b/src/devices/nm-lldp-listener.c index e5b1ee52e1..1495471d8d 100644 --- a/src/devices/nm-lldp-listener.c +++ b/src/devices/nm-lldp-listener.c @@ -24,8 +24,8 @@ #include +#include "nm-std-aux/unaligned.h" #include "platform/nm-platform.h" -#include "nm-utils/unaligned.h" #include "nm-utils/nm-c-list.h" #include "nm-utils.h" diff --git a/src/dhcp/nm-dhcp-systemd.c b/src/dhcp/nm-dhcp-systemd.c index 70ed871503..884ef0b910 100644 --- a/src/dhcp/nm-dhcp-systemd.c +++ b/src/dhcp/nm-dhcp-systemd.c @@ -27,7 +27,7 @@ #include #include "nm-utils/nm-dedup-multi.h" -#include "nm-utils/unaligned.h" +#include "nm-std-aux/unaligned.h" #include "nm-utils.h" #include "nm-config.h" diff --git a/src/nm-core-utils.c b/src/nm-core-utils.c index 6f55e62a79..a4f8f6912b 100644 --- a/src/nm-core-utils.c +++ b/src/nm-core-utils.c @@ -37,9 +37,9 @@ #include #include +#include "nm-std-aux/unaligned.h" #include "nm-utils/nm-random-utils.h" #include "nm-utils/nm-io-utils.h" -#include "nm-utils/unaligned.h" #include "nm-utils/nm-secret-utils.h" #include "nm-utils.h" #include "nm-core-internal.h" diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c index d8b18a3faf..5fcfece1ea 100644 --- a/src/platform/nm-linux-platform.c +++ b/src/platform/nm-linux-platform.c @@ -41,6 +41,8 @@ #include #include +#include "nm-std-aux/unaligned.h" + #include "nm-utils.h" #include "nm-core-internal.h" #include "nm-setting-vlan.h" @@ -56,7 +58,6 @@ #include "wifi/nm-wifi-utils.h" #include "wifi/nm-wifi-utils-wext.h" #include "wpan/nm-wpan-utils.h" -#include "nm-utils/unaligned.h" #include "nm-utils/nm-io-utils.h" #include "nm-utils/nm-udev-utils.h" diff --git a/src/platform/nm-netlink.h b/src/platform/nm-netlink.h index 094a3c6fde..b12fd243ab 100644 --- a/src/platform/nm-netlink.h +++ b/src/platform/nm-netlink.h @@ -25,7 +25,7 @@ #include #include -#include "nm-utils/unaligned.h" +#include "nm-std-aux/unaligned.h" /*****************************************************************************/ diff --git a/src/platform/nmp-rules-manager.c b/src/platform/nmp-rules-manager.c index aceed31dac..970afcde50 100644 --- a/src/platform/nmp-rules-manager.c +++ b/src/platform/nmp-rules-manager.c @@ -22,7 +22,7 @@ #include #include -#include "nm-utils/c-list-util.h" +#include "nm-std-aux/c-list-util.h" #include "nmp-object.h" /*****************************************************************************/