procse: procse.o procse_State.o procse_Record.o log_gamma.o sym_eigen.o
	g++ -o procse -O3 -Wall -W procse.o procse_State.o procse_Record.o log_gamma.o sym_eigen.o

procse.o: procse.h procse_TempClock.h procse_MonteCarlo.h procse_Record.h procse_State.h procse_ReVector.h procse_random.h procse.cpp
	g++ -c -O3 -ansi -pedantic -Wall procse.cpp
#	g++ -c -g -ansi -pedantic -Wall procse.cpp
#	g++ -c -Wall procse.cpp
#	g++ -c -Wall -W procse.cpp

procse_State.o: procse.h procse_State.h procse_ReVector.h procse_random.h procse_State.cpp
	g++ -c -O3 -ansi -pedantic -Wall procse_State.cpp
#	g++ -c -g -ansi -pedantic -Wall procse_State.cpp
#	g++ -c -Wall procse_State.cpp
#	g++ -c -Wall -W procse_State.cpp

procse_Record.o: procse.h procse_State.h procse_Record.h procse_ReVector.h procse_Record.cpp
	g++ -c -O3 -ansi -pedantic -Wall procse_Record.cpp
#	g++ -c -g -ansi -pedantic -Wall procse_Record.cpp
#	g++ -c -Wall procse_Record.cpp
#	g++ -c -Wall -W procse_Record.cpp

log_gamma.o: log_gamma.h log_gamma.c
	g++ -c -O3 -Wall -W log_gamma.c
#	g++ -c -g -Wall -W log_gamma.c

sym_eigen.o: sym_eigen.h sym_eigen.c
	g++ -c -O3 -Wall -W sym_eigen.c
#	g++ -c -g -Wall -W sym_eigen.c

clean:
	rm procse procse.o procse_State.o procse_Record.o log_gamma.o sym_eigen.o
