jw-pkg/make/include.mk
Jan Lindemann d684f198b2 make: Add dev-utils.mk for convenience targets
dev-utils.mk is meant to provide targets like install-to-system,
which will be invoked during development

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-11-27 15:10:18 +00:00

43 lines
1.1 KiB
Makefile

include $(MODDIR)/make/defs.mk
include $(MODDIR)/make/dev-utils.mk
# variables
SRC_H += $(PROJ_H) $(wildcard $(HDRDIR_SCOPE_SUFFIX)/*.h)
# mandatory targets
all: $(PROJ_H)
clean: clean.include
install: install_HDR
# not wäry naaice
ifneq ($(HDRDIR_SCOPE_SUFFIX),)
install_HDR: dir_install_hdr_suffix.done
dir_install_hdr_suffix.done:
$(INSTALL) -d -o $(HDRDIROWNER) -g $(HDRDIRGROUP) -m $(HDRDIRMODE) $(INSTALL_HDRDIR)/$(HDRDIR_SCOPE_SUFFIX)
touch $@
endif
# convenience targets
project-header: $(PROJ_H)
# rules
clean.include:
$(RM) -rf *.h *~ .*.swp *.done $(PROJ_H) $(HDRDIR_SCOPE_SUFFIX)
$(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 $@
install-links:
DEVELOPMENT=false make do-install-links
do-install-links:
@$(call install_links,HDR)
include $(MODDIR)/make/rules.mk