.SUFFIXES:

default: netcdf

HOMEDIR = $(wildcard ~)
MODELERC ?= $(HOMEDIR)/.modelErc
sinclude $(MODELERC)

export MODEL_E_ROOT:= $(shell pwd)/..
export CONFIG_DIR := $(MODEL_E_ROOT)/config

ifneq ($(findstring $(MAKECMDGOALS),netcdf),)
NETCDFHOME=
include $(CONFIG_DIR)/rules.mk
endif

NCDIR=$(HOMEDIR)/ModelE_Support/netcdf

netcdf:
	echo "will use CC: $(CC)"
	echo "will use F90: $(F90)"
	-rm -rf $(NCDIR)
	mkdir $(NCDIR)
	-rm -rf netcdf-c
	git clone https://github.com/Unidata/netcdf-c.git
	cd netcdf-c && \
	git checkout v4.8.0 && \
	CC="$(CC)" ./configure --prefix=$(NCDIR) --disable-hdf5 && \
	make && \
	make install
	-rm -rf netcdf-fortran
	git clone https://github.com/Unidata/netcdf-fortran.git
	cd netcdf-fortran && \
	git checkout v4.5.3 && \
	cat configure | sed 's/x\$$ac_cv_func_nc_get_chunk_cache_ints/disable/;' > configure.nonc4 && \
	chmod 755 configure.nonc4 && \
	CC="$(CC)" FC="$(F90)" CPPFLAGS=-I$(NCDIR)/include LDFLAGS=-L$(NCDIR)/lib LD_LIBRARY_PATH=$(NCDIR)/lib:$$LD_LIBRARY_PATH ./configure.nonc4 --prefix=$(NCDIR) && \
	make && \
	make install
	@echo
	@echo "**************************************************"
	@echo
	@echo Looks like netcdf was installed successfully. In ~/.modelErc set 
	@echo NETCDFHOME=$$HOME/ModelE_Support/netcdf
	@echo

netcdf-uninstall:
	rm -rf $(NCDIR)

clean:
	rm -rf netcdf-c
	rm -rf netcdf-fortran

