#=================================================================#
#     TvvOp Imakefile                            #
#                                                                 #
# <Makefile ̍> xmkmf [return]                              #
# <gpP> make KS_1d [return]                                  #
# <gpQ> make all [return]                                    #
#                                                                 #
#=================================================================#

########### ȉ̕ϐ͓KɕύXĂB###################

XRSLIB = -lXrs 
GCC      = g++
GCCFLAGS = -O4 -Wall
MATHLIB  = -lm
LIBDIR = -L$(USRLIBDIR) 
LINK = $(XRSLIB) $(XLIB) $(GCCLIB) $(MATHLIB) $(EXTRA_LIBRARIES)


SRCS = AE.C BTWsandpile.C BurridgeKnopoff.C CGL.C CGL_1d.C DLA.C EFKeq.C FitzHughNagumo.C FitzHughNagumo2.C FitzHughNagumo_1d.C FrictionalMotion.C GCGL.C GP.C GS.C KM.C KS_1d.C KahnHilliard.C KeenerTyson.C Lorenz.C MD0.C MD1.C MD2.C MakseStratification.C NW.C Parametric.C PhaseField.C Rossler.C SnowCrystal.C VanderPol.C bistable.C diffusion.C diffusion2.C excitable.C excitable_1d.C lattice_gas.C percolation.C

OBJS = AE.o BTWsandpile.o BurridgeKnopoff.o CGL.o CGL_1d.o DLA.o EFKeq.o FitzHughNagumo.o FitzHughNagumo2.o FitzHughNagumo_1d.o FrictionalMotion.o GCGL.o GP.o GS.o KM.o KS_1d.o KahnHilliard.o KeenerTyson.o Lorenz.o MD0.o MD1.o MD2.o MakseStratification.o NW.o Parametric.o PhaseField.o Rossler.o SnowCrystal.o VanderPol.o bistable.o diffusion.o diffusion2.o excitable.o excitable_1d.o lattice_gas.o percolation.o

EXEC = AE BTWsandpile BurridgeKnopoff CGL CGL_1d DLA EFKeq FitzHughNagumo FitzHughNagumo2 FitzHughNagumo_1d FrictionalMotion GCGL GP GS KM KS_1d KahnHilliard KeenerTyson Lorenz MD0 MD1 MD2 MakseStratification NW Parametric PhaseField Rossler SnowCrystal VanderPol bistable diffusion diffusion2 excitable excitable_1d lattice_gas percolation

all:: $(EXEC)

.SUFFIXES: .C .o

.C.o:   
	$(GCC) $(GCCFLAGS) $(TEMPLATEFLAGS) $(ALLINCLUDES) -c $*.C

clean::
	$(RM) $(OBJS) $(EXEC) 

AE: AE.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

BTWsandpile: BTWsandpile.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

BurridgeKnopoff: BurridgeKnopoff.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

CGL: CGL.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

CGL_1d: CGL_1d.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

DLA: DLA.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

EFKeq: EFKeq.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

FitzHughNagumo: FitzHughNagumo.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

FitzHughNagumo2: FitzHughNagumo2.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

FitzHughNagumo_1d: FitzHughNagumo_1d.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

FrictionalMotion: FrictionalMotion.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

GCGL: GCGL.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

GP: GP.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

GS: GS.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

KM: KM.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

KS_1d: KS_1d.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

KahnHilliard: KahnHilliard.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

KeenerTyson: KeenerTyson.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

Lorenz: Lorenz.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

MD0: MD0.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

MD1: MD1.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

MD2: MD2.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

MakseStratification: MakseStratification.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

NW: NW.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

Parametric: Parametric.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

PhaseField: PhaseField.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

Rossler: Rossler.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

SnowCrystal: SnowCrystal.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

VanderPol: VanderPol.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

bistable: bistable.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

diffusion: diffusion.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

diffusion2: diffusion2.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

excitable: excitable.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

excitable_1d: excitable_1d.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

lattice_gas: lattice_gas.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)

percolation: percolation.o
	$(GCC) $(LIBDIR) $@.o -o $@ $(LINK)
