# You'll need to edit HDFHOME to point to your HDF libraries
# if you are not at Caltech SRL.

CC = gcc
CFLAGS= -g -O -Wall -Wno-implicit-function-declaration -Wno-unused-variable

ASCHOME=/home/ascuser
HDFHOME=${ASCHOME}/HDF-4.2.13-rhel7

LIBDIR = ${HDFHOME}/lib
HDFLIBS = -lmfhdf -ldf -ljpeg -lz -lm
INC =${HDFHOME}/include
L2INC = ../include
L2HDFSUBS = ../hdfsubs

all: swepam_l2_1hr_rd swepam_l2_1hr_speed_rd \
	swepam_l2_1day_rd swepam_l2_64sec_rd swepam_l2_1hr_position_rd swepam_l2_64sec_position_rd

swepam_l2_1hr_rd: swepam_l2_1hr_rd.o ${L2HDFSUBS}/hdf_swepam_level2_data_1hr.o
	$(CC) ${CFLAGS} -o $@ $^ -I${INC} -I${L2INC} -L${LIBDIR} ${HDFLIBS} 

swepam_l2_1hr_rd.o: swepam_l2_1hr_rd.c
	$(CC) ${CFLAGS} -c $< -o $@ -I${INC} -I${L2INC}

swepam_l2_1hr_speed_rd: swepam_l2_1hr_speed_rd.o ${L2HDFSUBS}/hdf_swepam_level2_data_1hr.o
	$(CC) ${CFLAGS} -o $@ $^ -I${INC} -I${L2INC} -L${LIBDIR} ${HDFLIBS} 

swepam_l2_1hr_speed_rd.o: swepam_l2_1hr_speed_rd.c
	$(CC) ${CFLAGS} -c $< -o $@ -I${INC} -I${L2INC}

swepam_l2_1hr_position_rd:  swepam_l2_1hr_position_rd.o ${L2HDFSUBS}/hdf_swepam_level2_data_1hr.o
	$(CC) ${CFLAGS} -o $@ $^ -I${INC} -I${L2INC} -L${LIBDIR} ${HDFLIBS} 

swepam_l2_1hr_position_rd.o:  swepam_l2_1hr_position_rd.c
	$(CC) ${CFLAGS} -c $< -o $@ -I${INC} -I${L2INC}

${L2HDFSUBS}/hdf_swepam_level2_data_1hr.o: ${L2HDFSUBS}/hdf_swepam_level2_data_1hr.c
	$(CC) $(CFLAGS) -c $< -o $@ -I${INC} -I${L2INC}

swepam_l2_1day_rd: swepam_l2_1day_rd.o ${L2HDFSUBS}/hdf_swepam_level2_data_1day.o
	$(CC) ${CFLAGS} -o $@ $^ -I${INC} -I${L2INC} -L${LIBDIR} ${HDFLIBS} 

swepam_l2_1day_rd.o: swepam_l2_1day_rd.c
	$(CC) ${CFLAGS} -c $< -o $@ -I${INC} -I${L2INC}

${L2HDFSUBS}/hdf_swepam_level2_data_1day.o: ${L2HDFSUBS}/hdf_swepam_level2_data_1day.c
	$(CC) $(CFLAGS) -c $< -o $@ -I${INC} -I${L2INC}

swepam_l2_64sec_rd: swepam_l2_64sec_rd.o ${L2HDFSUBS}/hdf_swepam_level2_data_ion.o
	$(CC) ${CFLAGS} -o $@ $^ -I${INC} -I${L2INC} -L${LIBDIR} ${HDFLIBS} 

swepam_l2_64sec_rd.o: swepam_l2_64sec_rd.c
	$(CC) ${CFLAGS} -c $< -o $@ -I${INC} -I${L2INC}

swepam_l2_64sec_position_rd: swepam_l2_64sec_position_rd.o ${L2HDFSUBS}/hdf_swepam_level2_data_ion.o
	$(CC) ${CFLAGS} -o $@ $^ -I${INC} -I${L2INC} -L${LIBDIR} ${HDFLIBS} 

swepam_l2_64sec_position_rd.o: swepam_l2_64sec_position_rd.c
	$(CC) ${CFLAGS} -c $< -o $@ -I${INC} -I${L2INC}

${L2HDFSUBS}/hdf_swepam_level2_data_ion.o: ${L2HDFSUBS}/hdf_swepam_level2_data_ion.c
	$(CC) $(CFLAGS) -c $< -o $@ -I${INC} -I${L2INC}
