Mercurial > repos > blastem
comparison Makefile @ 2688:b42f00a3a937 default tip
Fix default target. Ensure m68k.h and z80.h are built before anything else when no dep info is available
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 31 Mar 2025 21:06:18 -0700 |
parents | da2e06c42d16 |
children |
comparison
equal
deleted
inserted
replaced
2687:948ddc60813e | 2688:b42f00a3a937 |
---|---|
1 #disable built-in rules | 1 #disable built-in rules |
2 .SUFFIXES : | 2 .SUFFIXES : |
3 .PHONY: all clean | |
3 | 4 |
4 ifndef OS | 5 ifndef OS |
5 OS:=$(shell uname -s) | 6 OS:=$(shell uname -s) |
6 endif | 7 endif |
7 ifndef SDL | 8 ifndef SDL |
326 ZTESTOBJS:=ztestrun.o serialize.o $(Z80OBJS) $(TRANSOBJS) util.o | 327 ZTESTOBJS:=ztestrun.o serialize.o $(Z80OBJS) $(TRANSOBJS) util.o |
327 CPMOBJS:=blastcpm.o util.o serialize.o $(Z80OBJS) $(TRANSOBJS) | 328 CPMOBJS:=blastcpm.o util.o serialize.o $(Z80OBJS) $(TRANSOBJS) |
328 | 329 |
329 LIBCFLAGS=$(CFLAGS) -fpic -DIS_LIB -DDISABLE_ZLIB | 330 LIBCFLAGS=$(CFLAGS) -fpic -DIS_LIB -DDISABLE_ZLIB |
330 | 331 |
332 all : $(ALL) | |
333 | |
334 ORDERONLY:=$(OBJDIR) | |
335 LIBORDERONLY:=$(LIBOBJDIR) | |
336 ifdef NEW_CORE | |
337 ifeq ($(wildcard $(OBJDIR)/*.d),) | |
338 ORDERONLY+= m68k.c z80.c | |
339 endif | |
340 ifeq ($(wildcard $(LIBOBJDIR)/*.d),) | |
341 LIBORDERONLY+= m68k.c z80.c | |
342 endif | |
343 endif | |
344 | |
331 -include $(MAINOBJS:%.o=$(OBJDIR)/%.d) | 345 -include $(MAINOBJS:%.o=$(OBJDIR)/%.d) |
332 -include $(LIBOBJS:%.o=$(LIBOBJDIR)/%.d) | 346 -include $(LIBOBJS:%.o=$(LIBOBJDIR)/%.d) |
333 -include $(DISOBJS:.o=$(OBJDIR)/%.d) | 347 -include $(DISOBJS:.o=$(OBJDIR)/%.d) |
334 -include $(OBJDIR)/trans.d | 348 -include $(OBJDIR)/trans.d |
335 -include $(OBJDIR)/ztestrun.d | 349 -include $(OBJDIR)/ztestrun.d |
336 -include $(OBJDIR)/blastcpm.d | 350 -include $(OBJDIR)/blastcpm.d |
337 | 351 |
338 all : $(ALL) | |
339 | |
340 $(OBJDIR) : | 352 $(OBJDIR) : |
341 mkdir -p $(OBJDIR)/nuklear_ui | 353 mkdir -p $(OBJDIR)/nuklear_ui |
342 mkdir -p $(OBJDIR)/zlib | 354 mkdir -p $(OBJDIR)/zlib |
343 | 355 |
344 $(LIBOBJDIR) : | 356 $(LIBOBJDIR) : |
383 ./cpu_dsl.py -d $(shell echo $@ | sed -E -e "s/^z80.*$$/$(Z80_DISPATCH)/" -e '/^goto/! s/^.*$$/call/') $< > $(shell echo $@ | sed -E 's/\.[ch]$$/./')c | 395 ./cpu_dsl.py -d $(shell echo $@ | sed -E -e "s/^z80.*$$/$(Z80_DISPATCH)/" -e '/^goto/! s/^.*$$/call/') $< > $(shell echo $@ | sed -E 's/\.[ch]$$/./')c |
384 | 396 |
385 %.db.c : %.db | 397 %.db.c : %.db |
386 sed $< -e 's/"/\\"/g' -e 's/^\(.*\)$$/"\1\\n"/' -e'1s/^\(.*\)$$/const char $(shell echo $< | tr '.' '_')_data[] = \1/' -e '$$s/^\(.*\)$$/\1;/' > $@ | 398 sed $< -e 's/"/\\"/g' -e 's/^\(.*\)$$/"\1\\n"/' -e'1s/^\(.*\)$$/const char $(shell echo $< | tr '.' '_')_data[] = \1/' -e '$$s/^\(.*\)$$/\1;/' > $@ |
387 | 399 |
388 $(OBJDIR)/%.o : %.S | $(OBJDIR) | 400 $(OBJDIR)/%.o : %.S | $(ORDERONLY) |
389 $(CC) -c -MMD -o $@ $< | 401 $(CC) -c -MMD -o $@ $< |
390 | 402 |
391 $(OBJDIR)/%.o : %.c | $(OBJDIR) | 403 $(OBJDIR)/%.o : %.c | $(ORDERONLY) |
392 $(CC) $(CFLAGS) -c -MMD -o $@ $< | 404 $(CC) $(CFLAGS) -c -MMD -o $@ $< |
393 | 405 |
394 $(OBJDIR)/%.o : %.m | $(OBJDIR) | 406 $(OBJDIR)/%.o : %.m | $(ORDERONLY) |
395 $(CC) $(CFLAGS) -c -MMD -o $@ $< | 407 $(CC) $(CFLAGS) -c -MMD -o $@ $< |
396 | 408 |
397 $(LIBOBJDIR)/%.o : %.S | $(LIBOBJDIR) | 409 $(LIBOBJDIR)/%.o : %.S | $(LIBORDERONLY) |
398 $(CC) -c -MMD -o $@ $< | 410 $(CC) -c -MMD -o $@ $< |
399 | 411 |
400 $(LIBOBJDIR)/%.o : %.c | $(LIBOBJDIR) | 412 $(LIBOBJDIR)/%.o : %.c | $(LIBORDERONLY) |
401 $(CC) $(LIBCFLAGS) -c -MMD -o $@ $< | 413 $(CC) $(LIBCFLAGS) -c -MMD -o $@ $< |
402 | 414 |
403 $(LIBOBJDIR)/%.o : %.m | $(LIBOBJDIR) | 415 $(LIBOBJDIR)/%.o : %.m | $(LIBORDERONLY) |
404 $(CC) $(LIBCFLAGS) -c -MMD -o $@ $< | 416 $(CC) $(LIBCFLAGS) -c -MMD -o $@ $< |
405 | 417 |
406 %.png : %.xcf | 418 %.png : %.xcf |
407 convert -background none -flatten $< $@ | 419 convert -background none -flatten $< $@ |
408 | 420 |