From 42851f44b85b8e84dc848a223b30d5269aec0644 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Sat, 6 Jun 2009 15:15:58 +0000 Subject: [PATCH] make: Header generation targets-tools.mk -> include.mk Move project header generation mechanics from targets-tools.mk into include.mk. --- make/include.mk | 24 +++++++++++++++++++++--- make/targets-tools.mk | 15 --------------- 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/make/include.mk b/make/include.mk index 559b8b81..08a2b66b 100644 --- a/make/include.mk +++ b/make/include.mk @@ -1,10 +1,28 @@ include $(MODDIR)/make/defs.mk include $(MODDIR)/make/rules.mk -all: +# variables +#PROJ_H ?= $(PROJECT).h +SRC_H += $(PROJ_H) + +# mandatory targets +all: $(PROJ_H) clean: clean.include install: install_HDR -clean.include: - rm -rf *.h *~ .*.swp *.done +# convenience targets +project-header: $(PROJ_H) + +# rules +clean.include: + rm -rf *.h *~ .*.swp *.done $(PROJ_H) + +$(PROJ_H): $(filter-out $(PROJ_H) $(PROJECT)/$(PROJ_H),$(wildcard *.h $(PROJECT)/*.h)) + echo "#ifndef _$(PROJECT_CAPNAME)_H" > $@.tmp + echo "#define _$(PROJECT_CAPNAME)_H" >> $@.tmp + echo >> $@.tmp + for h in $(sort $(patsubst $(PROJECT)/%,%,$^)); do echo "#include <$(PROJECT)/$$h>"; done >> $@.tmp + echo >> $@.tmp + echo "#endif /* #ifndef _$(PROJECT_CAPNAME)_H */" >> $@.tmp + mv $@.tmp $@ diff --git a/make/targets-tools.mk b/make/targets-tools.mk index 1e1a2a7e..7d981240 100644 --- a/make/targets-tools.mk +++ b/make/targets-tools.mk @@ -11,18 +11,3 @@ install: $(ALL) $(LIB_SO): $(OBJ) all.done: $(PREREQ_DONE) $(BUILD_HDR) $(BUILD_EXE_SH) $(MEMBERS) $(LIB_A) $(LIB_SO) -project-header: $(PROJ_H) - -# I think this is most cleanly handled in include.mk -#PROJ_H ?= $(PROJECT).h -SRC_H += $(PROJ_H) - -$(PROJ_H): $(filter-out $(PROJ_H) $(PROJECT)/$(PROJ_H),$(wildcard *.h $(PROJECT)/*.h)) - echo "#ifndef _$(PROJECT_CAPNAME)_H" > $@.tmp - echo "#define _$(PROJECT_CAPNAME)_H" >> $@.tmp - echo >> $@.tmp - for h in $(sort $(patsubst $(PROJECT)/%,%,$^)); do echo "#include <$(PROJECT)/$$h>"; done >> $@.tmp - echo >> $@.tmp - echo "#endif /* #ifndef _$(PROJECT_CAPNAME)_H */" >> $@.tmp - mv $@.tmp $@ -