chiark / gitweb /
build: use printf to generate symbol tests
[elogind.git] / Makefile.am
index f4bfe66e521c1ef924945dcd46bd5a225f3f902b..04e8e323d53bf91b755dc557766ec837afa216e0 100644 (file)
@@ -646,6 +646,8 @@ test_rtnl_SOURCES = \
 
 test_rtnl_LDADD = \
        libsystemd-rtnl.la \
+       libsystemd-bus-internal.la \
+       libsystemd-id128-internal.la \
        libsystemd-shared.la
 
 tests += test-rtnl
@@ -1024,6 +1026,7 @@ libsystemd_core_la_LIBADD = \
        libsystemd-daemon-internal.la \
        libudev-internal.la \
        libsystemd-shared.la \
+       libsystemd-rtnl.la \
        $(LIBWRAP_LIBS) \
        $(PAM_LIBS) \
        $(AUDIT_LIBS) \
@@ -1730,6 +1733,10 @@ bootctl_LDADD = \
 
 bin_PROGRAMS += \
        bootctl
+
+dist_zshcompletion_DATA += \
+       shell-completion/zsh/_bootctl
+
 endif
 
 # ------------------------------------------------------------------------------
@@ -1847,7 +1854,8 @@ systemd_nspawn_LDADD = \
        libsystemd-bus-internal.la \
        libsystemd-id128-internal.la \
        libsystemd-daemon-internal.la \
-       libsystemd-shared.la
+       libsystemd-shared.la \
+       libsystemd-rtnl.la
 
 # ------------------------------------------------------------------------------
 systemd_run_SOURCES = \
@@ -2815,6 +2823,7 @@ libsystemd_id128_la_LDFLAGS = \
        -Wl,--version-script=$(top_srcdir)/src/libsystemd-id128/libsystemd-id128.sym
 
 libsystemd_id128_la_LIBADD = \
+       libsystemd-daemon-internal.la \
        libsystemd-shared.la
 
 libsystemd_id128_internal_la_SOURCES = \
@@ -3830,7 +3839,8 @@ nodist_systemd_networkd_SOURCES = \
 
 systemd_networkd_LDADD = \
        libudev-internal.la \
-       libsystemd-bus.la \
+       libsystemd-bus-internal.la \
+       libsystemd-id128-internal.la \
        libsystemd-rtnl.la \
        libsystemd-shared.la
 
@@ -3852,7 +3862,8 @@ test_network_SOURCES = \
 
 test_network_LDADD = \
        libudev-internal.la \
-       libsystemd-bus.la \
+       libsystemd-bus-internal.la \
+       libsystemd-id128-internal.la \
        libsystemd-rtnl.la \
        libsystemd-shared.la
 
@@ -4667,10 +4678,11 @@ valgrind-tests: $(TESTS)
                libtool --mode=execute valgrind -q --leak-check=full --max-stackframe=4194400 --error-exitcode=55 $(builddir)/$$f ; \
        done
 
-exported: $(lib_LTLIBRARIES)
-       $(AM_V_GEN)for f in $(lib_LTLIBRARIES:.la=.so) ; do \
-               nm -g --defined-only $(builddir)/.libs/"$$f" 2>&1 /dev/null | grep " T " | cut -d" " -f3 ; \
-       done > $@
+exported-%: %
+       $(AM_V_GEN)nm -g --defined-only $(builddir)/.libs/$(<:.la=.so) 2>&1 /dev/null | grep " T " | cut -d" " -f3 > $@
+
+exported: $(addprefix exported-, $(lib_LTLIBRARIES))
+       $(AM_V_GEN)cat $^ > $@
 
 check-api-docs: exported man
        $(AM_V_GEN)for symbol in `cat exported` ; do \
@@ -4700,16 +4712,13 @@ check-api-unused: defined undefined exported
 
 define generate-sym-test
        $(AM_V_at)$(MKDIR_P) $(dir $@)
-       $(AM_V_at)echo '#include <stdio.h>' > $@
-       $(AM_V_at)for file in $(notdir $(filter %.h, $^)); do \
-               echo "#include \"$$file\""; \
-       done >> $@
-       $(AM_V_at)echo 'void* functions[] = {' >> $@
-       $(AM_V_GEN)sed -r -n 's/^( +[a-zA-Z0-9_]+);/\1,/p' $< >> $@
-       $(AM_V_at)echo '};' >> $@
-       $(AM_V_at)echo 'int main(void) {' >> $@
-       $(AM_V_at)echo ' unsigned i; for (i=0;i<sizeof(functions)/sizeof(void*);i++) printf("%p\n", functions[i]);' >> $@
-       $(AM_V_at)echo 'return 0; }' >> $@
+       $(AM_V_at)printf '#include <stdio.h>\n' > $@
+       $(AM_V_at)printf '#include "%s"\n' $(notdir $(filter %.h, $^)) >> $@
+       $(AM_V_at)printf 'void* functions[] = {\n' >> $@
+       $(AM_V_GEN)sed -r -n 's/^ +([a-zA-Z0-9_]+);/\1,/p' $< >> $@
+       $(AM_V_at)printf '};\nint main(void) {\n' >> $@
+       $(AM_V_at)printf 'unsigned i; for (i=0;i<sizeof(functions)/sizeof(void*);i++) printf("%%p\\n", functions[i]);\n' >> $@
+       $(AM_V_at)printf 'return 0; }\n' >> $@
 endef
 
 test-libsystemd-bus-sym.c: \