build: Add Makefile target for Coverity scanner
[netsniff-ng.git] / Template
blob715d2f1d194355957109c0b7de62e28a93e3ac6c
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)-yaac) $$(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),$$(SBINDIR))
12         $(Q)$(GZIP) $(1).8 > $(1)/$(1).8.gz
13         $(Q)$$(call INSTX,$(1)/$(1).8.gz,$$(MAN8DIR))
14         $(Q)$$(foreach file,$$($(1)-confs),$$(call INST,$$(file),$$(ETCDIRE));)
15   $(1)_install: $(1)_do_install $(1)_post_install
16   $(1)_uninstall: $(1)_uninstall_custom
17         $(Q)$$(call RM,$$(SBINDIR)/$(1))
18         $(Q)$$(call RM,$$(MAN8DIR)/$(1).8.gz)
19   $(1)/%.yy.o: $(1)/%.yy.c
20         $$(CC) $$(CFLAGS) -o $$@ -c $$<
21   $(1)/%.tab.o: $(1)/%.tab.c
22         $$(CC) $$(CFLAGS) -o $$@ -c $$<
23   $(1)/%.o: %.c
24         $$(CC) $$(CFLAGS) -o $(1)/$$(shell basename $$@) -c $$<
25 endef