# Makefile for King Stack examples # Use gcc as our C compiler (try g++ too) CC = gcc # Use the flags -g (debug) -Wall (all warnings on) -ansi (be strinctly ansi) # when running the C compiler CFLAGS = -g -Wall -ansi # A variable that is the names of all the programs we want to build PROGS = st1 st2 st3 st4 # First target in a Makefile is always the default - it says that the default # target is whatever is in variable PROGS all: ${PROGS} st1: st1.o stack1.o ${CC} -o st1 st1.o stack1.o st2: st2.o stack1.o ${CC} -o st2 st2.o stack1.o st3: st2.o stack2.o ${CC} -o st3 st2.o stack2.o st4: st2.o stack3.o ${CC} -o st4 st2.o stack3.o st1.o: st1.c stack.h ${CC} ${CFLAGS} -c st1.c st2.o: st2.c stack.h ${CC} ${CFLAGS} -c st2.c stack1.o: stack1.c stack.h ${CC} ${CFLAGS} -c stack1.c stack2.o: stack2.c stack.h ${CC} ${CFLAGS} -c stack2.c stack3.o: stack3.c stack.h ${CC} ${CFLAGS} -c stack3.c clean: /bin/rm -f ${PROGS} *.o *~