#---------------------------------------------------------------------
#     Copyright (C) GFD Dennou Club, 2005. All rights reserved.
#---------------------------------------------------------------------
#= Makefile for gt4f90io/gt4frt
#
#   * Developers: Eizi TOYODA (toyoda), Yasuhiro MORIKAWA (morikawa)
#   * Version: $Id: Makefile,v 1.1 2005/05/30 18:28:01 morikawa Exp $
#   * Tag Name: $Name: gt4f90io-20050530 $
#   * Change History: 
#

include ../Config.mk

TARGET=gt4

TESTDIR  = ../test
TESTFILES= histtest histaxis histget histcopy
TESTS    = $(TESTFILES:%=../test/%)


all: $(TARGET)frt$(gt4binsuffix) $(TARGET)config$(gt4binsuffix)

install: $(TARGET)frt$(gt4binsuffix)
	test -d $(DEST_BIN) || install -d $(DEST_BIN)
	$(INSTALLBIN) $(TARGET)frt$(gt4binsuffix) $(DEST_BIN)
	$(INSTALLBIN) $(TARGET)config$(gt4binsuffix) $(DEST_BIN)

$(TARGET)frt$(gt4binsuffix): gt4frtgen.sh Makefile ../Config.mk
	@echo "Making shell script $(TARGET)frt$(gt4binsuffix)"
	LIBNAME=$(LIBNAME) MODINSTDIR=$(DEST_INC) \
		LIBINSTDIR=$(DEST_LIB) \
		SYSLDFLAGS="$(SYSLDFLAGS)" \
		SYSLDLIBS="$(SYSLDLIBS)" \
		SYSFFLAGS="$(SYSFFLAGS)" \
		F90MODTYPE=$(F90MODTYPE) FC=$(FC) \
		sh ./gt4frtgen.sh $@
	chmod +x $(TARGET)frt$(gt4binsuffix)

$(TARGET)config$(gt4binsuffix): gt4configgen.sh Makefile ../Config.mk
	@echo "Making shell script $(TARGET)config$(gt4binsuffix)"
	LIBNAME=$(LIBNAME) MODINSTDIR=$(DEST_INC) \
		LIBINSTDIR=$(DEST_LIB) \
		SYSLDFLAGS="$(SYSLDFLAGS)" \
		SYSLDLIBS="$(SYSLDLIBS)" \
		SYSFFLAGS="$(SYSFFLAGS)" \
		F90MODTYPE=$(F90MODTYPE) FC=$(FC) \
		sh ./gt4configgen.sh $@
	chmod +x $(TARGET)config$(gt4binsuffix)

clean:
	-rm -f *~ $(TARGET)frt$(gt4binsuffix) $(TARGET)config$(gt4binsuffix)

test-installed: test

test: work.pcl
	@for i in $(TESTS) ; do \
	  $(DEST_BIN)/$(TARGET)frt$(gt4binsuffix) -c $$i.f90 -o $$i.o ;\
	  $(DEST_BIN)/$(TARGET)frt$(gt4binsuffix) -o $$i $$i.o ; \
	done
	cd $(TESTDIR) ; make $@ ; make clean
	@echo ""
	@echo ""
	@echo "   *** Compilation and installation are succeeded !! ***"
	@echo ""
	@echo ""

work.pcl: Makefile ../Config.mk
	sh ../chkpcl.sh $(SYSFFLAGS) $(INCLUDE_GT)
	mv work.pcl ../test/
