Chris@82: # -*- makefile -*- Chris@82: # This file contains special make rules to generate codelets. Chris@82: # Most of this file requires GNU make . Chris@82: Chris@82: CODLIST = codlist.c Chris@82: CODELET_NAME=codelet_ Chris@82: Chris@82: # only delete codlist.c in maintainer-mode, since it is included in the dist Chris@82: # FIXME: is there a way to delete in 'make clean' only when builddir != srcdir? Chris@82: maintainer-clean-local: Chris@82: rm -f $(CODLIST) Chris@82: Chris@82: if MAINTAINER_MODE Chris@82: Chris@82: # rule to build codlist Chris@82: $(CODLIST): Makefile Chris@82: ( \ Chris@82: echo "#include \"kernel/ifftw.h\""; \ Chris@82: echo $(INCLUDE_SIMD_HEADER); \ Chris@82: echo; \ Chris@82: for i in $(ALL_CODELETS) NIL; do \ Chris@82: if test "$$i" != NIL; then \ Chris@82: j=`basename $$i | sed -e 's/[.][cS]$$//g'`; \ Chris@82: echo "extern void $(XRENAME)($(CODELET_NAME)$$j)(planner *);"; \ Chris@82: fi \ Chris@82: done; \ Chris@82: echo; \ Chris@82: echo; \ Chris@82: echo "extern const solvtab $(SOLVTAB_NAME);"; \ Chris@82: echo "const solvtab $(SOLVTAB_NAME) = {"; \ Chris@82: for i in $(ALL_CODELETS) NIL; do \ Chris@82: if test "$$i" != NIL; then \ Chris@82: j=`basename $$i | sed -e 's/[.][cS]$$//g'`; \ Chris@82: echo " SOLVTAB($(XRENAME)($(CODELET_NAME)$$j)),"; \ Chris@82: fi \ Chris@82: done; \ Chris@82: echo " SOLVTAB_END"; \ Chris@82: echo "};"; \ Chris@82: ) >$@ Chris@82: Chris@82: #INDENT = indent -kr -cs -i5 -l800 -fca -nfc1 -sc -sob -cli4 -TR -Tplanner -TV Chris@82: TWOVERS = sh ${top_srcdir}/support/twovers.sh Chris@82: GENFFTDIR = ${top_builddir}/genfft Chris@82: GEN_NOTW = ${GENFFTDIR}/gen_notw.native Chris@82: GEN_NOTW_C = ${GENFFTDIR}/gen_notw_c.native Chris@82: GEN_TWIDDLE = ${GENFFTDIR}/gen_twiddle.native Chris@82: GEN_TWIDDLE_C = ${GENFFTDIR}/gen_twiddle_c.native Chris@82: GEN_TWIDSQ = ${GENFFTDIR}/gen_twidsq.native Chris@82: GEN_TWIDSQ_C = ${GENFFTDIR}/gen_twidsq_c.native Chris@82: GEN_R2CF = ${GENFFTDIR}/gen_r2cf.native Chris@82: GEN_R2CB = ${GENFFTDIR}/gen_r2cb.native Chris@82: GEN_HC2HC = ${GENFFTDIR}/gen_hc2hc.native Chris@82: GEN_HC2C = ${GENFFTDIR}/gen_hc2c.native Chris@82: GEN_HC2CDFT = ${GENFFTDIR}/gen_hc2cdft.native Chris@82: GEN_HC2CDFT_C = ${GENFFTDIR}/gen_hc2cdft_c.native Chris@82: GEN_R2R = ${GENFFTDIR}/gen_r2r.native Chris@82: PRELUDE_DFT = ${top_srcdir}/support/codelet_prelude.dft Chris@82: PRELUDE_RDFT = ${top_srcdir}/support/codelet_prelude.rdft Chris@82: ADD_DATE = sed -e s/@DATE@/"`date`"/ Chris@82: Chris@82: COPYRIGHT=${top_srcdir}/COPYRIGHT Chris@82: CODELET_DEPS=$(COPYRIGHT) $(PRELUDE) Chris@82: PRELUDE_COMMANDS_DFT=cat $(COPYRIGHT) $(PRELUDE_DFT) Chris@82: PRELUDE_COMMANDS_RDFT=cat $(COPYRIGHT) $(PRELUDE_RDFT) Chris@82: Chris@82: FLAGS_COMMON = -compact -variables 4 Chris@82: DFT_FLAGS_COMMON = $(FLAGS_COMMON) -pipeline-latency 4 Chris@82: RDFT_FLAGS_COMMON = $(FLAGS_COMMON) -pipeline-latency 4 Chris@82: Chris@82: # cancel the hideous builtin rules that cause an infinite loop Chris@82: %: %.o Chris@82: %: %.s Chris@82: %: %.c Chris@82: %: %.S Chris@82: Chris@82: endif # MAINTAINER_MODE