
#  makefile for GNU GCC


# ------------------------------- defintions ---------------------------

CC = gcc

INC = -I. -I./misc -I./cal $(INC_DEF)
CFLAGS = $(INC) -Wall -O3
LDFLAGS = -L. $(LIB_DEF)

LIBS = $(INC_LIB)
CLIBS = -L$(INC_LIB)

SRC = library.c 

OBJ = $(SRC:.c=.o)

# ------------------------------- make stuff ---------------------------

all : cday 


#%.o : %.c %.h makefile
#	$(CC) $(CFLAGS) -c $< -o $@

#.c.o  : %.c %.h
#	$(CC) $(CFLAGS) -c $< 

data.o	: data.c data.h
	$(CC) $(CFLAGS) -c data.c

library.o : library.c library.h
	gcc $(CFLAGS) -c library.c

cal/libcal.a :
	cd cal; make -f makefile; cd ..

misc/libmisc.a :
	cd misc; make -f makefile; cd ..

libcday.a : $(OBJ)
#	if exist libmisc.a del libcday.a
	$(AR) rc libcday.a $(OBJ) 
	ranlib libcday.a

cday : cday.c cday.h libcday.a cal/libcal.a misc/libmisc.a
	$(CC) $(INC) -o cday cday.c libcday.a cal/libcal.a misc/libmisc.a
#	$(CC) $(INC) cday.c *.o cal/*.o misc/*.o

test : testcal.c cal/libcal.a misc/libmisc.a
	$(CC) $(INC) -o testcal testcal.c cal/libcal.a misc/libmisc.a
	./testcal

clean :
	rm -f *.o
	rm -f *.a
	rm -f cday
	rm -f testcal
	#rm -f core
	#rm -f *~
	cd cal; make clean; cd ..
	cd misc; make clean; cd ..

