# # .SECONDEXPANSION allows an automatic variable to be used in the target list # $(ALLOCN): a11/$$@.c alloc.c # $(GCC) -o $@ a11/$@.c alloc.c # .SECONDEXPANSION: CC=gcc CFLAGS=-Werror -Wall -g -std=gnu1x -I/cs/www/classes/cs352/fall15/h EXECS=lam mcycle mar $(ALLOCN) alloc-shell ALLOCN=alloc1 alloc2 alloc3 alloc4 alloc5 alloc6 alloc7 alloc8 ALL=$(EXECS) alloc.o all: $(EXECS) lam: lam.c $(CC) $(CFLAGS) -o lam lam.c mar: mar.c $(CC) $(CFLAGS) -o mar mar.c mcycle: mcycle.c $(CC) $(CFLAGS) -o mcycle mcycle.c $(ALLOCN): a11/$$@.c alloc.c $(CC) $(CFLAGS) -o $@ a11/$@.c alloc.c alloc-shell: a11/alloc-shell.c alloc.c $(CC) $(CFLAGS) -o alloc-shell a11/alloc-shell.c alloc.c -lreadline .PHONY: alloc alloc: $(ALLOCN) alloc-shell install: alloc.o chmod 711 $(EXECS) cp $(EXECS) alloc.o a11 echo-execs: echo $(EXECS) clean: rm -f *.o $(ALL) *.build core