
SHELL = /bin/sh

# get OS
OS := $(shell uname -s)
#echo 'Making strike for OS = ' $OS
echo $(OS)

#setdirs:
# cycle through cases

# Linux
ifneq (,$(findstring Linux,$(OS)))
	BINDIR    := $(HOME)/bin/linbin
#	FF := ifc
	FF        := ifort
	FFLAGS  := -C -dalign -O0
endif

# SunOS
ifneq (,$(findstring SunOS,$(OS)))
	BINDIR 	 := $(HOME)/bin/sunbin
	FF 		 := ifort
	F9LAGS := -C -dalign -O
endif

# Cygwin
ifneq (,$(findstring CYGWIN,$(OS)))
	BINDIR    := $(HOME)/bin/cygbin
	FF        := ifort
	FFLAGS    := -C -dalign
#	cp $(INCDIR)op_sys_DOS.inc $(INCDIR)op_sys.inc
endif

echo 'Binary directory for compiled code = ' $(BINDIR)

default :: install


OBJS = calc_error.o     jcopyinfo.o      objfun.o \
       date.o           jkvar.o          pinput.o \
       convz2p.o        estim_imp.o      mat_multiply.o \
       convz2r.o        extreme.o        nag_16a.o        \
       jcopycomm.o      svarld.o \
       shiftup.o        trunc.o          trig_fns.o      \
       jformatfin.o     ediformatfin.o   jzdatin.o        edizdatin.o \
       edispecread.o    ediresread.o     mtcomp.o      \
       edicopycomm.o    edicopyinfo.o    revers.o      crevers.o \
       ediazimuth.o     getsitename.o


.f.o:; $(FF) $(FFLAGS) -c $<

strike1: strike1.o $(OBJS)
	$(FF) -o strike1 strike1.o $(OBJS)
	mv strike1  $(BINDIR)

strike1.o: strike.f
	mv size.inc size.inc.save
	cp SIZE_1x200.inc size.inc
	$(FF) -o strike1.o $(FFLAGS) -c strike.f
	mv size.inc.save size.inc

strike.o: strike.f size.inc version.inc
	$(FF) $(FFLAGS) -c strike.f
	
ediformatfin.o: ediformatfin.f size.inc
	$(FF) $(FFLAGS) -c ediformatfin.f
		
ediresread.o: ediresread.f size.inc
	$(FF) $(FFLAGS) -c ediresread.f
		
edispecread.o: edispecread.f size.inc
	$(FF) $(FFLAGS) -c edispecread.f
		
edizdatin.o: edizdatin.f size.inc
	$(FF) $(FFLAGS) -c edizdatin.f
			
jformatfin.o: jformatfin.f size.inc
	$(FF) $(FFLAGS) -c jformatfin.f
	
objfun.o: objfun.f size.inc
	$(FF) $(FFLAGS) -c objfun.f

strike: strike.o $(OBJS) 
	$(FF) -o strike strike.o $(OBJS)

dcmp2j.o: dcmp2j.f size.inc
	$(FF) $(FFLAGS) -c dcmp2j.f

dcmp2j: dcmp2j.o pinput.o shiftup.o trunc.o
	$(FF) $(FFLAGS) -o dcmp2j dcmp2j.o pinput.o shiftup.o trunc.o
	
install: strike
ifeq ($(OS),CYGWIN)
	mv strike.exe $(BINDIR)
else
	mv strike $(BINDIR)
endif	


dist:
	rm *.zip
	zip strike50.zip *.f *.inc makefile strike_example* e04* *.pdf strike.txt


