aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2015-06-11 08:38:46 -0400
committerRob Austein <sra@hactrn.net>2015-06-11 08:38:46 -0400
commit1fd31410722c665e68832fa59bdc1a624a4f0bef (patch)
treec57312e22d94eb67f55d57a8ba82a7f5418d6177
Basic port of libtfm (Tom's Fast Math library). Will want to lock
down with checksums and specific commits later, but this should suffice for initial testing.
-rw-r--r--.gitignore4
-rw-r--r--GNUmakefile37
2 files changed, 41 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..1671173
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*~
+tomsfastmath
+tfm.h
+libtfm.a
diff --git a/GNUmakefile b/GNUmakefile
new file mode 100644
index 0000000..c3377cd
--- /dev/null
+++ b/GNUmakefile
@@ -0,0 +1,37 @@
+# Download and build libtfm from source with the options we want.
+#
+# Perhaps we should be using a git subrepository instead of this hack?
+# Work that out later.
+
+URL := https://github.com/libtom/tomsfastmath.git
+
+REPO := $(notdir $(basename ${URL}))
+HDR := ${REPO}/src/headers/tfm.h
+LIB := ${REPO}/libtfm.a
+
+FLAGS := CFLAGS='-fPIC -Wall -W -Wshadow -Isrc/headers -g3'
+
+TARGETS := $(notdir ${HDR} ${LIB})
+
+all: ${TARGETS}
+
+clean:
+ rm -f ${TARGETS}
+ cd ${REPO}; git clean -dxf
+
+distclean: clean
+ rm -rf ${REPO}
+
+${HDR}:
+ git clone -q ${URL}
+
+${LIB}: ${HDR}
+# sha256sum --check Checksums
+ cd ${REPO}; git clean -dxf
+ cd ${REPO}; ${MAKE} ${FLAGS}
+
+$(notdir ${HDR}): ${HDR}
+ ln -f $^ $@
+
+$(notdir ${LIB}): ${LIB}
+ ln -f $^ $@