# This is similar to Makefile.fasm, look there for comments. # No dependency tracking, so force dependencies on all files # in dir/* and dir/*/* # Also, we cannot set output file name and need to guess # whether c-- has created .com file or no-extension file. define cmm_meta_rule $(1): $(2) Makefile.cmm $$(call respace,$$(addsuffix .dir,$(3))) \ $$(wildcard $$(dir $(2))*) $$(wildcard $$(dir $(2))*/*) flock $$(dir $(2)).lock -c '\ (cd "$$(dir $(2))" && win32-c-- /D=AUTOBUILD /D=LANG_ENG $(5) $$(notdir $(2)) >&2) && \ if [ -e $$(basename $$<) ]; then f=$$(basename $$<); else f=$$(basename $$<).com; fi && \ kpack --nologo $$$$f "$$@" && rm $$$$f' endef $(foreach f,$(CMM_PROGRAMS),$(eval $(call cmm_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname),$(fparam))))