
# -----------------------------------------------------------------
#   Makefile for crave
#   
#   Supported platforms
#       Unix / Linux      
#
# ---------------------------------------------------------------------

# complier options:
#   -O3 is for optimization
#   -lm is to link to the library libm.a in example directory /usr/lib/
#   -lz and -DWITH_ZLIB is for the ZLIB library

# Set WITH_ZLIB to 0 if ZLIB is not installed on your machine
WITH_ZLIB = 1



CCFLAGS = -O3
CCFLAGS0 = -O3 -lm

ifeq ($(WITH_ZLIB),1)
CCFLAGS += -DWITH_ZLIB=1
CCFLAGS0 += -lz -DWITH_ZLIB=1
endif


crave :  crave.o crave_util.o crave_code.o crave_code_vcf.o crave_code_tped.o crave_stat.o crave_print.o crave_user_defined.o crave_effect.o crave_read.o
	gcc -o crave crave.o crave_util.o crave_code.o crave_code_vcf.o crave_code_tped.o crave_stat.o crave_print.o crave_user_defined.o crave_effect.o crave_read.o $(CCFLAGS0) 

crave.o :	crave.c crave.h
		gcc -c crave.c $(CCFLAGS)

crave_util.o :	crave_util.c crave.h
		gcc -c crave_util.c $(CCFLAGS)

crave_code.o :	crave_code.c crave.h
		gcc -c crave_code.c $(CCFLAGS)

crave_code_vcf.o :	crave_code_vcf.c crave.h
		gcc -c crave_code_vcf.c $(CCFLAGS)

crave_code_tped.o :	crave_code_tped.c crave.h
		gcc -c crave_code_tped.c $(CCFLAGS)

crave_stat.o :	crave_stat.c crave.h
		gcc -c crave_stat.c $(CCFLAGS)

crave_print.o :	crave_print.c crave.h
		gcc -c crave_print.c $(CCFLAGS)

crave_user_defined.o :	crave_user_defined.c crave.h
		gcc -c crave_user_defined.c $(CCFLAGS)

crave_effect.o :	crave_effect.c crave.h
		gcc -c crave_effect.c $(CCFLAGS)

crave_read.o :	crave_read.c crave.h
		gcc -c crave_read.c $(CCFLAGS)

clean:
	\rm *.o crave