diff options
Diffstat (limited to 'src/libbasic')
-rw-r--r-- | src/libbasic/Makefile | 70 |
1 files changed, 26 insertions, 44 deletions
diff --git a/src/libbasic/Makefile b/src/libbasic/Makefile index f82161b856..278b061cb2 100644 --- a/src/libbasic/Makefile +++ b/src/libbasic/Makefile @@ -219,73 +219,55 @@ libbasic_la_SOURCES = \ src/basic/formats-util.h \ src/basic/nss-util.h -nodist_libbasic_la_SOURCES = \ - src/basic/errno-from-name.h \ - src/basic/errno-to-name.h \ - src/basic/af-from-name.h \ - src/basic/af-to-name.h \ - src/basic/arphrd-from-name.h \ - src/basic/arphrd-to-name.h \ - src/basic/cap-from-name.h \ - src/basic/cap-to-name.h +std.out_files = libbasic.la +CFLAGS += -pthread +CPPFLAGS += $(libsystemd.CPPFLAGS) $(libselinux.CPPFLAGS) $(libcap.CPPFLAGS) +$(outdir)/libbasic.la: \ + $(patsubst src/basic/%.c,$(outdir)/%.lo,$(filter %.c,$(libbasic_la_SOURCES))) \ + $(libselinux.DEPENDS) $(libcap.DEPENDS) -lrt -lm -libbasic_la_CFLAGS = \ - $(AM_CFLAGS) \ - $(SELINUX_CFLAGS) \ - $(CAP_CFLAGS) \ - -pthread +std.gen_files += *-to-name.h *-from-name.h *-from-name.gperf *-list.txt -libbasic_la_LIBADD = \ - $(SELINUX_LIBS) \ - $(CAP_LIBS) \ - -lrt \ - -lm +$(outdir)/af-list.lo: $(outdir)/af-from-name.h $(outdir)/af-to-name.h +$(outdir)/arphrd-list.lo: $(outdir)/arphrd-from-name.h $(outdir)/arphrd-to-name.h +$(outdir)/cap-list.lo: $(outdir)/cap-from-name.h $(outdir)/cap-to-name.h +$(outdir)/errno-list.lo: $(outdir)/errno-from-name.h $(outdir)/errno-to-name.h -src/basic/errno-list.txt: - $(AM_V_at)$(MKDIR_P) $(dir $@) - $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include errno.h - </dev/null | $(AWK) '/^#define[ \t]+E[^ _]+[ \t]+/ { print $$2; }' >$@ +$(outdir)/errno-list.txt: + $(AM_V_GEN)$(CPP) $(CFLAGS) $(CPPFLAGS) -dM -include errno.h - </dev/null | $(AWK) '/^#define[ \t]+E[^ _]+[ \t]+/ { print $$2; }' >$@ -src/basic/errno-to-name.h: src/basic/errno-list.txt - $(AM_V_at)$(MKDIR_P) $(dir $@) +$(outdir)/errno-to-name.h: $(outdir)/errno-list.txt $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const errno_names[] = { "} !/EDEADLOCK/ && !/EWOULDBLOCK/ && !/ENOTSUP/ { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' <$< >$@ -src/basic/af-list.txt: - $(AM_V_at)$(MKDIR_P) $(dir $@) - $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include sys/socket.h - </dev/null | grep -v AF_UNSPEC | grep -v AF_MAX | $(AWK) '/^#define[ \t]+AF_[^ \t]+[ \t]+PF_[^ \t]/ { print $$2; }' >$@ +$(outdir)/af-list.txt: + $(AM_V_GEN)$(CPP) $(CFLAGS) $(CPPFLAGS) -dM -include sys/socket.h - </dev/null | grep -v AF_UNSPEC | grep -v AF_MAX | $(AWK) '/^#define[ \t]+AF_[^ \t]+[ \t]+PF_[^ \t]/ { print $$2; }' >$@ -src/basic/af-to-name.h: src/basic/af-list.txt - $(AM_V_at)$(MKDIR_P) $(dir $@) +$(outdir)/af-to-name.h: $(outdir)/af-list.txt $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const af_names[] = { "} !/AF_FILE/ && !/AF_ROUTE/ && !/AF_LOCAL/ { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' <$< >$@ -src/basic/arphrd-list.txt: - $(AM_V_at)$(MKDIR_P) $(dir $@) - $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include net/if_arp.h - </dev/null | $(AWK) '/^#define[ \t]+ARPHRD_[^ \t]+[ \t]+[^ \t]/ { print $$2; }' | sed -e 's/ARPHRD_//' >$@ +$(outdir)/arphrd-list.txt: + $(AM_V_GEN)$(CPP) $(CFLAGS) $(CPPFLAGS) -dM -include net/if_arp.h - </dev/null | $(AWK) '/^#define[ \t]+ARPHRD_[^ \t]+[ \t]+[^ \t]/ { print $$2; }' | sed -e 's/ARPHRD_//' >$@ -src/basic/arphrd-to-name.h: src/basic/arphrd-list.txt +$(outdir)/arphrd-to-name.h: $(outdir)/arphrd-list.txt $(AM_V_at)$(MKDIR_P) $(dir $@) $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const arphrd_names[] = { "} !/CISCO/ { printf "[ARPHRD_%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' <$< >$@ -src/basic/arphrd-from-name.gperf: src/basic/arphrd-list.txt - $(AM_V_at)$(MKDIR_P) $(dir $@) +$(outdir)/arphrd-from-name.gperf: $(outdir)/arphrd-list.txt $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct arphrd_name { const char* name; int id; };"; print "%null-strings"; print "%%";} { printf "%s, ARPHRD_%s\n", $$1, $$1 }' <$< >$@ -src/basic/cap-list.txt: - $(AM_V_at)$(MKDIR_P) $(dir $@) - $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include linux/capability.h -include missing.h - </dev/null | $(AWK) '/^#define[ \t]+CAP_[A-Z_]+[ \t]+/ { print $$2; }' | grep -v CAP_LAST_CAP >$@ +$(outdir)/cap-list.txt: + $(AM_V_GEN)$(CPP) $(CFLAGS) $(CPPFLAGS) -dM -include linux/capability.h -include missing.h - </dev/null | $(AWK) '/^#define[ \t]+CAP_[A-Z_]+[ \t]+/ { print $$2; }' | grep -v CAP_LAST_CAP >$@ -src/basic/cap-to-name.h: src/basic/cap-list.txt - $(AM_V_at)$(MKDIR_P) $(dir $@) +$(outdir)/cap-to-name.h: $(outdir)/cap-list.txt $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const capability_names[] = { "} { printf "[%s] = \"%s\",\n", $$1, tolower($$1) } END{print "};"}' <$< >$@ -src/basic/cap-from-name.gperf: src/basic/cap-list.txt - $(AM_V_at)$(MKDIR_P) $(dir $@) +$(outdir)/cap-from-name.gperf: $(outdir)/cap-list.txt $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct capability_name { const char* name; int id; };"; print "%null-strings"; print "%%";} { printf "%s, %s\n", $$1, $$1 }' <$< >$@ -src/basic/cap-from-name.h: src/basic/cap-from-name.gperf - $(AM_V_at)$(MKDIR_P) $(dir $@) +$(outdir)/cap-from-name.h: $(outdir)/cap-from-name.gperf $(AM_V_GPERF)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_capability -H hash_capability_name -p -C <$< >$@ include $(topsrcdir)/build-aux/Makefile.tail.mk |