CC=gcc
AR=ar

all: test

clean:
	$(RM) test
	$(RM) *.o
	$(RM) libport.a


test: test.o libport.a
	$(CC) -o test test.o libport.a

test.o: test.c 
	$(CC) -o test.o -c test.c 

libport.a: format.o fprintf.o printf.o snprintf.o sprintf.o vfprintf.o vprintf.o vsnprintf.o vsprintf.o
	$(AR) -rc libport.a format.o fprintf.o printf.o snprintf.o sprintf.o vfprintf.o vprintf.o vsnprintf.o vsprintf.o

format.o: format.c 
	$(CC) -o format.o -c format.c 

fprintf.o: fprintf.c
	$(CC) -o fprintf.o -c fprintf.c

printf.o: printf.c
	$(CC) -o printf.o -c printf.c

snprintf.o: snprintf.c
	$(CC) -o snprintf.o -c snprintf.c

sprintf.o: sprintf.c
	$(CC) -o sprintf.o -c sprintf.c

vfprintf.o: vfprintf.c
	$(CC) -o vfprintf.o -c vfprintf.c

vprintf.o: vprintf.c
	$(CC) -o vprintf.o -c vprintf.c

vsnprintf.o: vsnprintf.c
	$(CC) -o vsnprintf.o -c vsnprintf.c

vsprintf.o: vsprintf.c
	$(CC) -o vsprintf.o -c vsprintf.c


