COMPILER = gcc CFLAGS = -Wall -pedantic -pthread COBJS = putNget.o prtastr.o CEXES = example01 example02 example03 flawed_pc good_pc all: ${CEXES} example01: example01.c ${COBJS} ${COMPILER} ${CFLAGS} example01.c ${COBJS} -o example01 example02: example02.c ${COBJS} ${COMPILER} ${CFLAGS} example02.c ${COBJS} -o example02 example03: example03.c ${COBJS} ${COMPILER} ${CFLAGS} example03.c ${COBJS} -o example03 flawed_pc: flawed_pc.c ${COBJS} ${COMPILER} ${CFLAGS} flawed_pc.c ${COBJS} -o flawed_pc good_pc: good_pc.c ${COBJS} ${COMPILER} ${CFLAGS} good_pc.c ${COBJS} -o good_pc %.o: %.c %.h makefile ${COMPILER} ${CFLAGS} $< -c clean: rm -f *.o *~ ${CEXES}