all: fft_numrec fft_mayer fft_duhamel fft_wang fft_r_mayer fft_r_numrec

test: test_mayer test_wang

numrec/fft.o: numrec/fft.c
	cd numrec; make; cd ..

mayer/fft.o: mayer/fft.c
	cd mayer; make; cd ..

mayer_new/fft.o: mayer_new/fft.c
	cd mayer_new; make; cd ..

duhamel/fft.o: duhamel/fft.c
	cd duhamel; make; cd ..

fft_numrec: time_numrec.c numrec/fft.o
	gcc -O4 -o fft_numrec time_numrec.c numrec/fft.o   -lm

fft_mayer: time_mayer.c mayer/fft.o
	gcc -O4 -o fft_mayer  time_mayer.c  mayer/fft.o

fft_mayer_new: time_mayer.c mayer_new/fft.o
	gcc -O4 -o fft_mayer_new  time_mayer.c  mayer_new/fft.o

fft_duhamel: time_duhamel.c duhamel/fft.o
	gcc -O4 -o fft_duhamel  time_duhamel.c  duhamel/fft.o -lm

fft_r_numrec: time_r_numrec.c numrec/fft.o
	gcc -O4 -o fft_r_numrec time_r_numrec.c numrec/fft.o   -lm

fft_r_mayer: time_r_mayer.c mayer/fft.o
	gcc -O4 -o fft_r_mayer  time_r_mayer.c  mayer/fft.o

fft_wang: time_wang.c wang/libfft.a
	gcc -O4 -o fft_wang   time_wang.c   wang/libfft.a  -lm

test_mayer: show_mayer.c mayer/fft.o
	gcc -O4 -o test_mayer  show_mayer.c  mayer/fft.o

test_wang: show_wang.c wang/libfft.a
	gcc -O4 -o test_wang  show_wang.c  wang/libfft.a -lm

libs:
	cd numrec; /bin/make
	cd mayer; /bin/make
	cd wang; /bin/make
