aboutsummaryrefslogtreecommitdiff
path: root/libraries
diff options
context:
space:
mode:
Diffstat (limited to 'libraries')
-rw-r--r--libraries/libcli/Makefile26
-rw-r--r--libraries/libhal/GNUmakefile14
-rw-r--r--libraries/libhal/tests/GNUmakefile10
-rw-r--r--libraries/libhal/utils/GNUmakefile10
-rw-r--r--libraries/libtfm/GNUmakefile46
-rw-r--r--libraries/libtfm/tomsfastmath/GNUmakefile8
6 files changed, 114 insertions, 0 deletions
diff --git a/libraries/libcli/Makefile b/libraries/libcli/Makefile
new file mode 100644
index 0000000..509f493
--- /dev/null
+++ b/libraries/libcli/Makefile
@@ -0,0 +1,26 @@
+ifndef CRYPTECH_ROOT
+ CRYPTECH_ROOT := $(abspath ../../../..)
+endif
+
+REPO := ${CRYPTECH_ROOT}/user/ft/libcli
+
+vpath %.c ${REPO}
+vpath %.h ${REPO}
+
+include ${REPO}/Makefile
+
+# Kludge alert:
+#
+# We really should teach Makefiles that need libcli.h to look in the
+# right place, but we don't want to wire the current location of
+# libcli into too many Makefiles, since we intend to move it soon.
+#
+# So, for the moment, we just copy libcli.h. Clean this up after the
+# the repository moves (and maybe do something about the general
+# assumption that header files and libraries always live in the same
+# directory, that's wrong in a VPATH-based world).
+
+all: $(abspath .)/libcli.h
+
+$(abspath .)/libcli.h: ${REPO}/libcli.h
+ cp -p $< $@
diff --git a/libraries/libhal/GNUmakefile b/libraries/libhal/GNUmakefile
new file mode 100644
index 0000000..03b1636
--- /dev/null
+++ b/libraries/libhal/GNUmakefile
@@ -0,0 +1,14 @@
+ifndef CRYPTECH_ROOT
+ CRYPTECH_ROOT := $(abspath ../../../..)
+endif
+
+REPO := ${CRYPTECH_ROOT}/sw/libhal
+
+TFMDIR := $(abspath ../libtfm)
+
+CFLAGS += -I${REPO}
+
+vpath %.c ${REPO}
+vpath %.h ${REPO}:${LIBTFM_DIR}
+
+include ${CRYPTECH_ROOT}/sw/libhal/GNUmakefile
diff --git a/libraries/libhal/tests/GNUmakefile b/libraries/libhal/tests/GNUmakefile
new file mode 100644
index 0000000..1d7449a
--- /dev/null
+++ b/libraries/libhal/tests/GNUmakefile
@@ -0,0 +1,10 @@
+ifndef CRYPTECH_ROOT
+ CRYPTECH_ROOT := $(abspath ../../../../..)
+endif
+
+TFMDIR := $(abspath ../../libtfm)
+
+vpath %.c ${CRYPTECH_ROOT}/sw/libhal/tests
+vpath %.h ${CRYPTECH_ROOT}/sw/libhal/tests:${LIBTFM_DIR}
+
+include ${CRYPTECH_ROOT}/sw/libhal/tests/GNUmakefile
diff --git a/libraries/libhal/utils/GNUmakefile b/libraries/libhal/utils/GNUmakefile
new file mode 100644
index 0000000..9d38efd
--- /dev/null
+++ b/libraries/libhal/utils/GNUmakefile
@@ -0,0 +1,10 @@
+ifndef CRYPTECH_ROOT
+ CRYPTECH_ROOT := $(abspath ../../../../..)
+endif
+
+TFMDIR := $(abspath ../../libtfm)
+
+vpath %.c ${CRYPTECH_ROOT}/sw/libhal/utils
+vpath %.h ${CRYPTECH_ROOT}/sw/libhal/utils:${LIBTFM_DIR}
+
+include ${CRYPTECH_ROOT}/sw/libhal/utils/GNUmakefile
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}'
diff --git a/libraries/libtfm/tomsfastmath/GNUmakefile b/libraries/libtfm/tomsfastmath/GNUmakefile
new file mode 100644
index 0000000..7141763
--- /dev/null
+++ b/libraries/libtfm/tomsfastmath/GNUmakefile
@@ -0,0 +1,8 @@
+ifndef CRYPTECH_ROOT
+ CRYPTECH_ROOT := $(abspath ../../../../..)
+endif
+
+vpath %.c ${CRYPTECH_ROOT}/sw/thirdparty/libtfm/tomsfastmath
+vpath %.h ${CRYPTECH_ROOT}/sw/thirdparty/libtfm/tomsfastmath
+
+include ${CRYPTECH_ROOT}/sw/thirdparty/libtfm/tomsfastmath/makefile