diff options
author | Rob Austein <sra@hactrn.net> | 2016-06-25 00:22:11 -0400 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2016-06-25 00:22:11 -0400 |
commit | aa90cb43b370ee219e1e14ad774b662a53178727 (patch) | |
tree | 7f2452ccf228ff39e14d612613ec8fbd22fe11e2 /libraries/libtfm/GNUmakefile | |
parent | 41d765504350626b9c886c0e92f768184b457a54 (diff) |
Finish unwinding subrepository hairball: VPATH setup.
Diffstat (limited to 'libraries/libtfm/GNUmakefile')
-rw-r--r-- | libraries/libtfm/GNUmakefile | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/libraries/libtfm/GNUmakefile b/libraries/libtfm/GNUmakefile new file mode 100644 index 0000000..ca86f80 --- /dev/null +++ b/libraries/libtfm/GNUmakefile @@ -0,0 +1,46 @@ + +# This duplicates more of sw/thirdparty/libtfm/GNUmakefile than I +# would like, but it does the job. Prettier makefiles can wait for another day. + +ifndef CRYPTECH_ROOT + CRYPTECH_ROOT := $(abspath ../../../..) +endif + +REPO := ${CRYPTECH_ROOT}/sw/thirdparty/libtfm + +# vpath %.c ${REPO} +# vpath %.h ${REPO} + +BITS := 8192 + +HDR := ${REPO}/tomsfastmath/src/headers/tfm.h +LIB := tomsfastmath/libtfm.a + +#CFLAGS += -DTFM_X86 +#CFLAGS += -DTFM_NO_ASM + +CFLAGS += -fPIC -Wall -W -Wshadow -I${REPO}/tomsfastmath/src/headers -g3 -DFP_MAX_SIZE="(${BITS}*2+(8*DIGIT_BIT))" + +TARGETS := $(notdir ${HDR} ${LIB}) + +all: ${TARGETS} + +clean: + rm -rf ${TARGETS} $(notdir ${HDR}.tmp) ${LIB} tomsfastmath/src + +distclean: clean + rm -f TAGS + +$(notdir ${HDR}): ${HDR} + echo >$@.tmp '/* Configure size of largest bignum we want to handle -- see notes in tfm.pdf */' + echo >>$@.tmp '#define FP_MAX_SIZE (${BITS}*2+(8*DIGIT_BIT))' + echo >>$@.tmp '' + cat >>$@.tmp $^ + mv -f $@.tmp $@ + +$(notdir ${LIB}): ${LIB} + ln -f $^ $@ + +${LIB}: ${HDR} + (cd ${REPO} && find tomsfastmath/src -type d) | xargs mkdir -p + cd tomsfastmath; ${MAKE} CFLAGS='${CFLAGS}' |