Year 2 compilers coureswork

Makefile 240B

12345678910111213141516
  1. OUT:=$(patsubst %.c, %.asm, $(wildcard *.c))
  2. OS:=$(shell uname)
  3. ifeq ($(OS),Darwin)
  4. SED:=gsed
  5. else
  6. SED:=sed
  7. endif
  8. all: $(OUT)
  9. %.asm: %.c ../mycc
  10. ../mycc < $< | $(SED) -n '/^=\{5\}$$/ { s///; :a; n; p; ba; }' > $@
  11. clean:
  12. rm -rf *.asm