summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2017-11-16 10:47:54 +0100
committerThomas Haller <thaller@redhat.com>2017-11-16 11:49:52 +0100
commitac95f7da0bdf46f1ebce6ef3d5afa4beeec094d8 (patch)
tree57fec9e40e38a20c91f09b874cdb51d7308f9490
parenta6be2f4aa9070e7f423b7c9992dbae51f092071e (diff)
downloadNetworkManager-ac95f7da0bdf46f1ebce6ef3d5afa4beeec094d8.tar.gz
build: include "siphash24.c" source in "nm-hash-utils.c"
This allows the compiler to inline the siphash24*() functions for nm_hash_ptr() and nm_hash_str() (even without LTO). This of course only applies to nm_hash_ptr() and nm_hash_str(), which are implemented in "nm-hash-utils.c" itself. All other nm_hash_*() functions are inline functions in "nm-hash-utils.h", and thus these functions can be inlined instead. That is, in other cases, the nm_hash_*() function instead can be inlined. For nm_hash_ptr() and nm_hash_str() instead we want to inline the siphash24*() functions. So, no longer compile "siphash24.c" directly. Instead, only build "nm-hash-utils.c" which internally #include "siphash24.c".
-rw-r--r--Makefile.am6
-rw-r--r--shared/nm-utils/nm-hash-utils.c2
2 files changed, 5 insertions, 3 deletions
diff --git a/Makefile.am b/Makefile.am
index 449f77474a..4a8cd35292 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -460,7 +460,6 @@ libnm_core_lib_c_real = \
shared/nm-utils/nm-shared-utils.c \
shared/nm-utils/nm-random-utils.c \
shared/nm-utils/nm-udev-utils.c \
- shared/nm-utils/siphash24.c \
shared/nm-meta-setting.c \
libnm-core/crypto.c \
libnm-core/nm-connection.c \
@@ -3131,7 +3130,7 @@ $(src_tests_test_utils_OBJECTS): $(libnm_core_lib_h_pub_mkenums)
src_tests_test_systemd_CPPFLAGS = $(src_libsystemd_nm_la_cppflags)
src_tests_test_systemd_SOURCES = \
- shared/nm-utils/siphash24.c \
+ shared/nm-utils/nm-hash-utils.c \
src/tests/test-systemd.c
src_tests_test_systemd_LDADD = \
src/libsystemd-nm.la \
@@ -3324,7 +3323,6 @@ clients_common_libnmc_base_la_SOURCES = \
shared/nm-utils/nm-random-utils.h \
shared/nm-utils/nm-shared-utils.c \
shared/nm-utils/nm-shared-utils.h \
- shared/nm-utils/siphash24.c \
shared/nm-utils/siphash24.h \
\
clients/common/nm-secret-agent-simple.c \
@@ -4578,6 +4576,8 @@ EXTRA_DIST += \
shared/nm-utils/nm-vpn-plugin-macros.h \
shared/nm-utils/nm-vpn-plugin-utils.c \
shared/nm-utils/nm-vpn-plugin-utils.h \
+ shared/nm-utils/siphash24.c \
+ shared/nm-utils/siphash24.h \
shared/nm-utils/unaligned.h \
shared/nm-version-macros.h.in \
\
diff --git a/shared/nm-utils/nm-hash-utils.c b/shared/nm-utils/nm-hash-utils.c
index e4daf1a07c..b096be692c 100644
--- a/shared/nm-utils/nm-hash-utils.c
+++ b/shared/nm-utils/nm-hash-utils.c
@@ -28,6 +28,8 @@
#include "nm-shared-utils.h"
#include "nm-random-utils.h"
+#include "siphash24.c"
+
/*****************************************************************************/
#define HASH_KEY_SIZE 16u