Mercurial > ~dholland > hg > ag > index.cgi
diff mk/progs.mk @ 0:13d2b8934445
Import AnaGram (near-)release tree into Mercurial.
author | David A. Holland |
---|---|
date | Sat, 22 Dec 2007 17:52:45 -0500 |
parents | |
children | bb115deb6fb2 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mk/progs.mk Sat Dec 22 17:52:45 2007 -0500 @@ -0,0 +1,50 @@ +# +# 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