Mirror of CollapseOS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
949B

  1. TARGETS = forth rc2014 sms ti84
  2. OBJS = emul.o z80.o
  3. RC2014_OBJS = $(OBJS) sio.o acia.o sdc.o rc2014_spi.o
  4. SMS_OBJS = $(OBJS) tms9918.o sms_vdp.o sms_ports.o sms_pad.o ps2_kbd.o sdc.o \
  5. sms_spi.o
  6. TI84_OBJS = $(OBJS) t6a04.o ti84_kbd.o
  7. CDIR = ../../cvm
  8. STAGE = $(CDIR)/stage
  9. BLKFS = $(CDIR)/blkfs
  10. .PHONY: all
  11. all: $(TARGETS)
  12. forth: forth.c $(OBJS) $(BLKFS)
  13. $(CC) forth.c $(OBJS) -lcurses -o $@
  14. rc2014: rc2014.c $(RC2014_OBJS)
  15. $(CC) rc2014.c $(RC2014_OBJS) -o $@
  16. sms: sms.c $(SMS_OBJS)
  17. $(CC) sms.c $(SMS_OBJS) -o $@ `pkg-config --cflags --libs xcb`
  18. ti84: ti84.c $(TI84_OBJS)
  19. $(CC) ti84.c $(TI84_OBJS) -o $@ `pkg-config --cflags --libs xcb`
  20. emul.o: emul.c forth.bin $(BLKFS)
  21. $(CC) -DFBIN_PATH=\"`pwd`/forth.bin\" -DBLKFS_PATH=\"`pwd`/$(BLKFS)\" -c -o emul.o emul.c
  22. forth.bin: xcomp.fs $(STAGE) $(BLKFS)
  23. $(CDIR)/stage < xcomp.fs > $@
  24. $(BLKFS): $(STAGE)
  25. $(STAGE):
  26. $(MAKE) -C $(CDIR) all
  27. .PHONY: clean
  28. clean:
  29. rm -f $(TARGETS) *.o *.bin