# Makefile for Verlet Molecular Dynamics package.
# use "gmake" or "make" to compile the package. 
# Jerry Vigil -  06/24/2004
CC = g++
LIBRARIES = -lm
HEADERS = Verlet/Particle.h Verlet/Verlet.h Verlet/Force.h Verlet/FunctionPtr.h Verlet/Energy.h Verlet/RadialDistribution.h
OBJECTS = lib/Verlet.o lib/Particle.o lib/FunctionPtr.o
SRC = src/Particle.cxx src/FunctionPtr.cxx src/Verlet.cxx src/Main.cxx
VERLETSRC = src/Verlet.cxx
PARTICLESRC = src/Particle.cxx
FUNCPTRSRC = src/FunctionPtr.cxx
MAIN = src/Main.cxx
EXECUTABLE = Verlet.exe
RMEXEC = rm -f Verlet.exe
RMOBJECTS = rm -f lib/*

Particle: $(SRC) $(HEADERS)
	$(CC) -o lib/Particle.o -c $(PARTICLESRC) -I`pwd`

FunctionPtr: $(SRC) $(HEADERS)
	$(CC) -o lib/FunctionPtr.o -c $(FUNCPTRSRC) -I`pwd`

Verlet: $(SRC) $(HEADERS)
	$(CC) -o lib/Verlet.o -c $(VERLETSRC) -I`pwd`

executable: $(SRC) $(HEADERS) $(OBJECTS)
	$(CC) -o $(EXECUTABLE) $(OBJECTS) $(MAIN) -I`pwd` $(LIBRARIES) -Wall

clean: 
	$(RMEXEC) $(RMOBJECTS)

FlyvbjergPetersen: output/FlyvbjergPetersen.C
	$(CC) -o output/FlyvbjergPetersen.exe output/FlyvbjergPetersen.C -lm

InitialPE: output/InitialPE.C
	$(CC) -o output/InitialPE.exe output/InitialPE.C -lm

