Mercurial > ~dholland > hg > ag > index.cgi
view mk/prog.mk @ 6:607e3be6bad8
Adjust to the moving target called the C++ standard.
Apparently nowadays it's not allowed to define an explicit copy
constructor but not an assignment operator. Consequently, defining the
explicit copy constructor in terms of the implicit/automatic
assignment operator for general convenience no longer works.
Add assignment operators.
Caution: not tested with the IBM compiler, but there's no particular
reason it shouldn't work.
author | David A. Holland |
---|---|
date | Mon, 30 May 2022 23:46:22 -0400 |
parents | 13d2b8934445 |
children | bb115deb6fb2 |
line wrap: on
line source
# # prog.mk - compile a program, in portable make. # # Before including, set: # PROG program to build # SRCS sources # RCFILES (optional) Windows resource files # 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: none all: beforeall doall afterall beforeall doall afterall:; # BSD make has .WAIT to make beforeall/afterall work, but gmake doesn't. .NOTPARALLEL: doall: $(PROG)$(EXEEXT) TYPE=PROG include rules.mk include depend.mk $(PROG)$(EXEEXT): $(OBJS) $(RESFILES) $(MYLIBS) @echo ' [DEP]' @$(MKDEP) @echo ' [LINK] $@' @$(LDCC) $(LDFLAGS) $(OBJS) $(RESFILES) $(MYLIBS) $(LIBS) -o $@ rules: @$(TOP)/mk/include-defs.sh '$(INCDIRS)' > rules.mk @$(TOP)/mk/compile-rules.sh '$(SRCS)' '$(RCFILES)' >> rules.mk @$(TOP)/mk/agfile-rules.sh $(AGFILEDEST) '$(SYNS)' '$(SYNOUTPUTEXT)' \ >> rules.mk # @echo ' [RULES]' depend: @echo ' [DEP]' @$(MKDEP) clean: @echo ' [RM] $(PROG)$(EXEEXT) $(CLEANFILES) *~' @rm -f $(PROG)$(EXEEXT) $(CLEANFILES) *~ distclean: clean @echo ' [RM] $(DISTCLEANFILES) *~' @rm -f $(DISTCLEANFILES) *~ .PHONY: all rules depend clean distclean