build: fix install dependencies in Makefile template
[netsniff-ng.git] / Template
blob54b597291d23cce1300c394a0de84384fc3165a5
1 define TOOL_templ
2   include $(1)/Makefile
3   $(1) $(1)%: BUILD_DIR := $(1)
4   $(1) $(1)%: CFLAGS += $$($(1)-eflags)
5   $(1)_prehook:
6         $(Q)echo "$(bold)$(WHAT) $(1):$(normal)"
7   $(1): $(1)_prehook $$($(1)-lex) $$($(1)-yacc) $$(patsubst %.o,$(1)/%.o,$$($(1)-objs))
8   $(1)_clean: $(1)_clean_custom
9         $(Q)$$(call RM,$(1)/*.o $(1)/$(1) $(1)/*.gz)
10   $(1)_do_install:
11         $(Q)$$(call INSTX,$(1)/$(1),$$(DESTDIR)$$(SBINDIR))
12         $(Q)eval GZIP= gzip $(GZIP_ENV) $(1).8 > $(1)/$(1).8.gz
13         $(Q)$$(call INST,$(1)/$(1).8.gz,$$(DESTDIR)$$(MAN8DIR))
14         $(Q)$$(foreach file,$$($(1)-confs),$$(call INST,$$(file),$$(DESTDIR)$$(ETCDIRE));)
15   $(1)_post_install: $(1)_do_install
16   $(1)_install: $(1)_do_install $(1)_post_install
17   $(1)_uninstall: $(1)_uninstall_custom
18         $(Q)$$(call RM,$$(DESTDIR)$$(SBINDIR)/$(1))
19         $(Q)$$(call RM,$$(DESTDIR)$$(MAN8DIR)/$(1).8.gz)
20   $(1)/%.yy.o: $(1)/%.yy.c
21         $$(CCQ) $$(CFLAGS) -o $$@ -c $$<
22   $(1)/%.tab.o: $(1)/%.tab.c
23         $$(CCQ) $$(CFLAGS) -o $$@ -c $$<
24   $(1)/%.o: %.c %.h
25         $$(CHECK) $$(CFLAGS) $$(CHECKFLAGS) $$<
26         $$(CCQ) $$(CFLAGS) -o $(1)/$$(shell basename $$@) -c $$<
27   $(1)/%.o: %.c
28         $$(CHECK) $$(CFLAGS) $$(CHECKFLAGS) $$<
29         $$(CCQ) $$(CFLAGS) -o $(1)/$$(shell basename $$@) -c $$<
30 endef