view mk/progs.mk @ 8:ec2b657edf13

Add explicit lint-comment-style fallthrough annotations. GCC now assumes that if you don't have these you're making a mistake, which is annoying. XXX: This changeset updates the AG output files only (by hand) and is XXX: abusive - rebuilding them will erase the change. However, I need XXX: to get things to build before I can try to get AG to issue the XXX: annotations itself, so this seems like a reasonable expedient.
author David A. Holland
date Mon, 30 May 2022 23:51:43 -0400
parents 13d2b8934445
children bb115deb6fb2
line wrap: on
line source

#
# progs.mk - compile multiple programs, in portable make.
#
# Before including, set:
#    SRCS                        sources of programs to build
#    SYNS (optional)             AG syntax files
#    SYNOUTPUTEXT (optional)     output suffix for AG files
#    AGFILEDEST (optional)       destination for AG files ("here" or "srcdir")
#

SYNOUTPUTEXT?=.cpp
AGFILEDEST?=srcdir

include $(BUILDTOP)/config.mk

# beforeall used by: agfile-rules.sh when AGFILEDEST==here
# afterall used by: nobody

all: beforeall doall afterall
beforeall doall afterall:;

# BSD make has .WAIT to make beforeall/afterall work, but gmake doesn't.
.NOTPARALLEL:

TYPE=PROG

include rules.mk
include depend.mk

rules:
	@$(TOP)/mk/include-defs.sh '$(INCDIRS)' > rules.mk
	@$(TOP)/mk/progs-rules.sh '$(SRCS)' >> rules.mk
	@$(TOP)/mk/compile-rules.sh '$(SRCS)' '' >> rules.mk
	@$(TOP)/mk/agfile-rules.sh $(AGFILEDEST) '$(SYNS)' '$(SYNOUTPUTEXT)' \
	    >> rules.mk
#	@echo '        [RULES]'

depend:
	@echo '        [DEP]'
	@$(MKDEP)

clean:
	@echo '        [RM]      $(CLEANFILES) *~'
	@rm -f $(PROGS) $(CLEANFILES) *~

distclean: clean
	@echo '        [RM]      $(DISTCLEANFILES) *~'
	@rm -f $(DISTCLEANFILES) *~

.PHONY: all rules depend clean distclean