shun_iwasawa a35b8f
KFVER=130
shun_iwasawa a35b8f
shun_iwasawa a35b8f
doc:
shun_iwasawa a35b8f
	@echo "Start by reading the README file.  If you want to build and test lots of stuff, do a 'make testall'"
shun_iwasawa a35b8f
	@echo "but be aware that 'make testall' has dependencies that the basic kissfft software does not."
shun_iwasawa a35b8f
	@echo "It is generally unneeded to run these tests yourself, unless you plan on changing the inner workings"
shun_iwasawa a35b8f
	@echo "of kissfft and would like to make use of its regression tests."
shun_iwasawa a35b8f
shun_iwasawa a35b8f
testall:
shun_iwasawa a35b8f
	# The simd and int32_t types may or may not work on your machine 
shun_iwasawa a35b8f
	make -C test DATATYPE=simd CFLAGADD="$(CFLAGADD)" test
shun_iwasawa a35b8f
	make -C test DATATYPE=int32_t CFLAGADD="$(CFLAGADD)" test
shun_iwasawa a35b8f
	make -C test DATATYPE=int16_t CFLAGADD="$(CFLAGADD)" test
shun_iwasawa a35b8f
	make -C test DATATYPE=float CFLAGADD="$(CFLAGADD)" test
shun_iwasawa a35b8f
	make -C test DATATYPE=double CFLAGADD="$(CFLAGADD)" test
shun_iwasawa a35b8f
	echo "all tests passed"
shun_iwasawa a35b8f
shun_iwasawa a35b8f
tarball: clean
shun_iwasawa a35b8f
	hg archive -r v$(KFVER) -t tgz kiss_fft$(KFVER).tar.gz 
shun_iwasawa a35b8f
	hg archive -r v$(KFVER) -t zip kiss_fft$(KFVER).zip
shun_iwasawa a35b8f
shun_iwasawa a35b8f
clean:
shun_iwasawa a35b8f
	cd test && make clean
shun_iwasawa a35b8f
	cd tools && make clean
shun_iwasawa a35b8f
	rm -f kiss_fft*.tar.gz *~ *.pyc kiss_fft*.zip 
shun_iwasawa a35b8f
shun_iwasawa a35b8f
asm: kiss_fft.s
shun_iwasawa a35b8f
shun_iwasawa a35b8f
kiss_fft.s: kiss_fft.c kiss_fft.h _kiss_fft_guts.h
shun_iwasawa a35b8f
	[ -e kiss_fft.s ] && mv kiss_fft.s kiss_fft.s~ || true
shun_iwasawa a35b8f
	gcc -S kiss_fft.c -O3 -mtune=native -ffast-math -fomit-frame-pointer -unroll-loops -dA -fverbose-asm 
shun_iwasawa a35b8f
	gcc -o kiss_fft_short.s -S kiss_fft.c -O3 -mtune=native -ffast-math -fomit-frame-pointer -dA -fverbose-asm -DFIXED_POINT
shun_iwasawa a35b8f
	[ -e kiss_fft.s~ ] && diff kiss_fft.s~ kiss_fft.s || true