# Makefile 1 # Simple makefile with all our target-prerequisite-command rules all: main-stack main-queue queue.o: queue.c queue.h gcc -Wall -g -c queue.c stack.o: stack.c stack.h gcc -Wall -g -c stack.c main-queue.o: main-queue.c queue.h gcc -Wall -g -c main-queue.c main-stack.o: main-stack.c stack.h gcc -Wall -g -c main-stack.c libdata.a: queue.o stack.o ar rc libdata.a queue.o stack.o ranlib libdata.a # Example without using a library main-stack: main-stack.o stack.o gcc -o main-stack main-stack.o stack.o # Example with the library main-queue: main-queue.o libdata.a gcc -o main-queue main-queue.o -L. -ldata clean: rm -f *.o main-stack main-queue libdata.a