#******************************************************************#
#                                                                  #
# Makefile for            AMIGA tools                              #
#                        =============                             #
#                                                                  #
# current version 1.0 (16/03/2005), Alexander Knebe                #
#******************************************************************#

#*******************************************************************#
amigaheader:			DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
amigaRemoveHalos:		DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
amigaExtractHalos:	DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
amigaPdens:				DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
gadgetPdens:			DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
cosmology:				DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
PdensExtractHalos:	DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
outputs:					DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
virial:					DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
age:						DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
pmass:					DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
readlog:					DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
ExtractMhalo:			DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
HaloShape:				DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}
calcMinStar:				DEFINEFLAGS	=	-DVERBOSE -DHEADER ${MASTER_DEFINEFLAGS}


CFLAGS  =       ${OPTIMIZE} ${CCFLAGS} ${DEFINEFLAGS}
LFLAGS  =       ${LNFLAGS}

export DEFINEFLAGS

LIBS = 	../src/libmhd/libmhd.a \
			../src/libgrids/libgrids.a \
			../src/libio_serial/libio_serial.a \
			../src/libutility/libutility.a


# HOW TO MAKE THE ACTUAL PROGRAMMES
amigaheader:	amigaheader.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o amigaheader amigaheader.c ${LIBS} ${LIBS} -lm

amigaRemoveHalos:	amigaRemoveHalos.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o amigaRemoveHalos amigaRemoveHalos.c ${LIBS} ${LIBS} -lm

amigaExtractHalos:	amigaExtractHalos.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o amigaExtractHalos amigaExtractHalos.c ${LIBS} ${LIBS} -lm

amigaPdens:	amigaPdens.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o amigaPdens amigaPdens.c ${LIBS} ${LIBS} -lm

gadgetPdens:	gadgetPdens.c
	$(CC) $(CFLAGS) $(LFLAGS) -o gadgetPdens gadgetPdens.c -lm

PdensExtractHalos:	PdensExtractHalos.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o PdensExtractHalos PdensExtractHalos.c ${LIBS} ${LIBS} -lm

outputs:	outputs.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o outputs outputs.c ${LIBS} ${LIBS} -lm

virial:	virial.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o virial virial.c ${LIBS} ${LIBS} -lm

age:	age.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o age age.c ${LIBS} ${LIBS} -lm

cosmology:	cosmology.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o cosmology cosmology.c ${LIBS} ${LIBS} -lm

pmass:		pmass.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o pmass pmass.c -lm

readlog:		readlog.c
	$(CC) $(CFLAGS) $(LFLAGS) -o readlog readlog.c -lm

ViewSats:		ViewSats.f
	$(FC) -O2 -o ViewSats ViewSats.f

ExtractSats:		ExtractSats.f
	$(FC) -O2 -o ExtractSats ExtractSats.f

ExtractMhalo:		ExtractMhalo.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o ExtractMhalo ExtractMhalo.c -lm

HaloShape:		HaloShape.c ${LIBS}
	$(CC) $(CFLAGS) $(LFLAGS) -o HaloShape HaloShape.c ${LIBS} ${LIBS} -lm

calcMinStar:		calcMinStar.c
	$(CC) $(CFLAGS) $(LFLAGS) -o calcMinStar calcMinStar.c -lm




# HOW TO MAKE THE LIBRARIES
../src/libmhd/libmhd.a:
	cd ../src/libmhd ; ${MAKE} libmhd.a

../src/libgrids/libgrids.a:
	cd ../src/libgrids ; ${MAKE} libgrids.a

../src/libio_serial/libio_serial.a:
	cd ../src/libio_serial ; ${MAKE} libio_serial.a

../src/libutility/libutility.a:
	cd ../src/libutility ; ${MAKE} libutility.a



clean:
	rm -f   amigaheader outputs pmass amigaRemoveHalos amigaExtractHalos amigaPdens PdensExtractHalo virial age cosmology gadgetPdens *.o

veryclean:
	rm -f   amigaheader outputs pmass amigaRemoveHalos amigaExtractHalos amigaPdens PdensExtractHalo virial age cosmology gadgetPdens *.o *~ *~.*
