changeset 2606:486e07a62469

GNU make before 4.3 does not support :& syntax, but apparently pattern rules support grouped targets without it
author Michael Pavone <pavone@retrodev.com>
date Fri, 14 Feb 2025 00:11:28 -0800
parents b63059c1921c
children 6b3b411f3339
files Makefile
diffstat 1 files changed, 2 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Thu Feb 13 23:08:56 2025 -0800
+++ b/Makefile	Fri Feb 14 00:11:28 2025 -0800
@@ -372,12 +372,9 @@
 vos_prog_info : $(OBJDIR)/vos_prog_info.o $(OBJDIR)/vos_program_module.o
 	$(CC) -o $@ $^ $(OPT)
 
-m68k.c m68k.h &: m68k.cpu cpu_dsl.py
-	./cpu_dsl.py -d call $< > m68k.c
-
 .PRECIOUS: %.c
-%.c %.h &: %.cpu cpu_dsl.py
-	./cpu_dsl.py -d $(Z80_DISPATCH) $< > $(shell echo $@ | sed -E 's/\.[ch]$$/./')c
+%.c %.h : %.cpu cpu_dsl.py
+	./cpu_dsl.py -d $(shell echo $@ | sed -E -e "s/^z80.*$$/$(Z80_DISPATCH)/" -e '/^goto/! s/^.*$$/call/') $< > $(shell echo $@ | sed -E 's/\.[ch]$$/./')c
 
 %.db.c : %.db
 	sed $< -e 's/"/\\"/g' -e 's/^\(.*\)$$/"\1\\n"/' -e'1s/^\(.*\)$$/const char $(shell echo $< | tr '.' '_')_data[] = \1/' -e '$$s/^\(.*\)$$/\1;/' > $@