#= Makefile for gtool5/gt5frt # # Authors:: Eizi TOYODA, Yasuhiro MORIKAWA # Version:: $Id: Makefile,v 1.3 2008-10-19 16:46:22 morikawa Exp $ # Tag Name:: $Name: gtool5-20090302 $ # Copyright:: Copyright (C) GFD Dennou Club, 2004-2008. All rights reserved. # License:: See COPYRIGHT[link:../COPYRIGHT] # #vi: set ts=8 sw=4: # ###################################################################### # #== Settings # # [JAPANESE] 各種設定項目 INCLUDEFILE = ../Config.mk include $(INCLUDEFILE) # Include file (optional) # [JA] インクルードファイル (任意) TARGET=gt5 TESTDIR = ../test TESTFILES=dc_test_test dc_string_test dc_url_test dc_args_test dc_hash_test \ dc_date_test dc_clock_test dc_iounit_test dc_scaledsec_test \ histinquire \ histtest histaxis histget histcopy histnmlinfo histauto TESTS = $(TESTFILES:%=../test/%) TESTFILES_MPI = histtest_mpi TESTS_MPI = $(TESTFILES_MPI:%=../test/%) # End Settings [JA] 設定項目ここまで ###################################################################### all: $(TARGET)frt$(gt5binsuffix) $(TARGET)config$(gt5binsuffix) install: $(TARGET)frt$(gt5binsuffix) test -d $(DEST_BIN) || $(INSTALLDIR) $(DEST_BIN) $(INSTALLBIN) $(TARGET)frt$(gt5binsuffix) $(DEST_BIN) $(INSTALLBIN) $(TARGET)config$(gt5binsuffix) $(DEST_BIN) $(TARGET)frt$(gt5binsuffix): gt5frtgen.sh Makefile ../Config.mk @echo "Making shell script $(TARGET)frt$(gt5binsuffix)" LIBNAME=$(LIBNAME) MODINSTDIR=$(DEST_INC) \ LIBINSTDIR=$(DEST_LIB) \ SYSLDFLAGS="$(SYSLDFLAGS)" \ SYSLDLIBS="$(SYSLDLIBS)" \ SYSFFLAGS="$(SYSFFLAGS)" \ F90MODTYPE=$(F90MODTYPE) \ MODPATHFLAG=$(MODPATHFLAG) \ FC=$(FC) \ LINKF="$(LINKF)" HOST_CPU="$(HOST_CPU)"\ sh ./gt5frtgen.sh $@ chmod +x $(TARGET)frt$(gt5binsuffix) $(TARGET)config$(gt5binsuffix): gt5configgen.sh Makefile ../Config.mk @echo "Making shell script $(TARGET)config$(gt5binsuffix)" LIBNAME=$(LIBNAME) MODINSTDIR=$(DEST_INC) \ LIBINSTDIR=$(DEST_LIB) \ SYSLDFLAGS="$(SYSLDFLAGS)" \ SYSLDLIBS="$(SYSLDLIBS)" \ SYSFFLAGS="$(SYSFFLAGS)" \ F90MODTYPE=$(F90MODTYPE) \ MODPATHFLAG=$(MODPATHFLAG) \ FC=$(FC) \ LINKF="$(LINKF)" HOST_CPU="$(HOST_CPU)"\ sh ./gt5configgen.sh $@ chmod +x $(TARGET)config$(gt5binsuffix) clean: -rm -f *~ $(TARGET)frt$(gt5binsuffix) $(TARGET)config$(gt5binsuffix) test-installed: test-build test test-installed-c: test-c test-build: work.pcl @for i in $(TESTS) ; do \ $(DEST_BIN)/$(TARGET)frt$(gt5binsuffix) -c $$i.f90 -o $$i.o ;\ $(DEST_BIN)/$(TARGET)frt$(gt5binsuffix) -o $$i $$i.o ; \ done test-mpi-installed: test-mpi-build test-mpi test-mpi-build: work.pcl @for i in $(TESTS_MPI) ; do \ $(DEST_BIN)/$(TARGET)frt$(gt5binsuffix) -c $$i.f90 -o $$i.o ;\ $(DEST_BIN)/$(TARGET)frt$(gt5binsuffix) -o $$i $$i.o ; \ done test: @if [ ! "$(CROSS_COMPILING)" = "yes" ] && [ ! "$(CROSS_COMPILING)" = "maybe" ] ; then \ echo "cd $(TESTDIR)" ; cd $(TESTDIR) || exit 1 ; \ echo "make $@" ; make $@ || exit 1 ; \ echo "make clean" ; make clean ; \ else \ echo "" ;\ echo " Cross compile mode will be used." ;\ echo " First, change directory to $(GTOOLDIR)/test ." ;\ echo " Secondly, submit ..." ;\ echo " $(TESTFILES)," ;\ echo "" ;\ echo " Thirdly, change directory to $(GTOOLDIR) ." ;\ echo " Last \"make test-installed-c\"" ;\ echo "" ;\ exit ;\ fi @echo "" @echo "" @echo " *** Compilation and installation are succeeded !! ***" @echo "" @echo "" test-mpi: @if [ ! "$(CROSS_COMPILING)" = "yes" ] && [ ! "$(CROSS_COMPILING)" = "maybe" ] ; then \ echo "cd $(TESTDIR)" ; cd $(TESTDIR) || exit 1 ; \ echo "make $@" ; make $@ || exit 1 ; \ echo "make clean" ; make clean ; \ else \ echo "" ;\ echo " Cross compile mode will be used." ;\ echo " First, change directory to $(GTOOLDIR)/test ." ;\ echo " Secondly, submit ..." ;\ echo " $(TESTFILES)," ;\ echo "" ;\ echo " Thirdly, change directory to $(GTOOLDIR) ." ;\ echo " Last \"make test-installed-c\"" ;\ echo "" ;\ exit ;\ fi @echo "" @echo "" @echo " *** Compilation and installation (MPI) are succeeded !! ***" @echo "" @echo "" test-c: cd $(TESTDIR) ; make $@ || exit 1 ; 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/