annotate src/fftw-3.3.8/support/Makefile.codelets @ 167:bd3cc4d1df30

Add FFTW 3.3.8 source, and a Linux build
author Chris Cannam <cannam@all-day-breakfast.com>
date Tue, 19 Nov 2019 14:52:55 +0000
parents
children
rev   line source
cannam@167 1 # -*- makefile -*-
cannam@167 2 # This file contains special make rules to generate codelets.
cannam@167 3 # Most of this file requires GNU make .
cannam@167 4
cannam@167 5 CODLIST = codlist.c
cannam@167 6 CODELET_NAME=codelet_
cannam@167 7
cannam@167 8 # only delete codlist.c in maintainer-mode, since it is included in the dist
cannam@167 9 # FIXME: is there a way to delete in 'make clean' only when builddir != srcdir?
cannam@167 10 maintainer-clean-local:
cannam@167 11 rm -f $(CODLIST)
cannam@167 12
cannam@167 13 if MAINTAINER_MODE
cannam@167 14
cannam@167 15 # rule to build codlist
cannam@167 16 $(CODLIST): Makefile
cannam@167 17 ( \
cannam@167 18 echo "#include \"kernel/ifftw.h\""; \
cannam@167 19 echo $(INCLUDE_SIMD_HEADER); \
cannam@167 20 echo; \
cannam@167 21 for i in $(ALL_CODELETS) NIL; do \
cannam@167 22 if test "$$i" != NIL; then \
cannam@167 23 j=`basename $$i | sed -e 's/[.][cS]$$//g'`; \
cannam@167 24 echo "extern void $(XRENAME)($(CODELET_NAME)$$j)(planner *);"; \
cannam@167 25 fi \
cannam@167 26 done; \
cannam@167 27 echo; \
cannam@167 28 echo; \
cannam@167 29 echo "extern const solvtab $(SOLVTAB_NAME);"; \
cannam@167 30 echo "const solvtab $(SOLVTAB_NAME) = {"; \
cannam@167 31 for i in $(ALL_CODELETS) NIL; do \
cannam@167 32 if test "$$i" != NIL; then \
cannam@167 33 j=`basename $$i | sed -e 's/[.][cS]$$//g'`; \
cannam@167 34 echo " SOLVTAB($(XRENAME)($(CODELET_NAME)$$j)),"; \
cannam@167 35 fi \
cannam@167 36 done; \
cannam@167 37 echo " SOLVTAB_END"; \
cannam@167 38 echo "};"; \
cannam@167 39 ) >$@
cannam@167 40
cannam@167 41 #INDENT = indent -kr -cs -i5 -l800 -fca -nfc1 -sc -sob -cli4 -TR -Tplanner -TV
cannam@167 42 TWOVERS = sh ${top_srcdir}/support/twovers.sh
cannam@167 43 GENFFTDIR = ${top_builddir}/genfft
cannam@167 44 GEN_NOTW = ${GENFFTDIR}/gen_notw.native
cannam@167 45 GEN_NOTW_C = ${GENFFTDIR}/gen_notw_c.native
cannam@167 46 GEN_TWIDDLE = ${GENFFTDIR}/gen_twiddle.native
cannam@167 47 GEN_TWIDDLE_C = ${GENFFTDIR}/gen_twiddle_c.native
cannam@167 48 GEN_TWIDSQ = ${GENFFTDIR}/gen_twidsq.native
cannam@167 49 GEN_TWIDSQ_C = ${GENFFTDIR}/gen_twidsq_c.native
cannam@167 50 GEN_R2CF = ${GENFFTDIR}/gen_r2cf.native
cannam@167 51 GEN_R2CB = ${GENFFTDIR}/gen_r2cb.native
cannam@167 52 GEN_HC2HC = ${GENFFTDIR}/gen_hc2hc.native
cannam@167 53 GEN_HC2C = ${GENFFTDIR}/gen_hc2c.native
cannam@167 54 GEN_HC2CDFT = ${GENFFTDIR}/gen_hc2cdft.native
cannam@167 55 GEN_HC2CDFT_C = ${GENFFTDIR}/gen_hc2cdft_c.native
cannam@167 56 GEN_R2R = ${GENFFTDIR}/gen_r2r.native
cannam@167 57 PRELUDE_DFT = ${top_srcdir}/support/codelet_prelude.dft
cannam@167 58 PRELUDE_RDFT = ${top_srcdir}/support/codelet_prelude.rdft
cannam@167 59 ADD_DATE = sed -e s/@DATE@/"`date`"/
cannam@167 60
cannam@167 61 COPYRIGHT=${top_srcdir}/COPYRIGHT
cannam@167 62 CODELET_DEPS=$(COPYRIGHT) $(PRELUDE)
cannam@167 63 PRELUDE_COMMANDS_DFT=cat $(COPYRIGHT) $(PRELUDE_DFT)
cannam@167 64 PRELUDE_COMMANDS_RDFT=cat $(COPYRIGHT) $(PRELUDE_RDFT)
cannam@167 65
cannam@167 66 FLAGS_COMMON = -compact -variables 4
cannam@167 67 DFT_FLAGS_COMMON = $(FLAGS_COMMON) -pipeline-latency 4
cannam@167 68 RDFT_FLAGS_COMMON = $(FLAGS_COMMON) -pipeline-latency 4
cannam@167 69
cannam@167 70 # cancel the hideous builtin rules that cause an infinite loop
cannam@167 71 %: %.o
cannam@167 72 %: %.s
cannam@167 73 %: %.c
cannam@167 74 %: %.S
cannam@167 75
cannam@167 76 endif # MAINTAINER_MODE