aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--.gitmodules3
-rw-r--r--GNUmakefile17
m---------tomsfastmath0
4 files changed, 8 insertions, 13 deletions
diff --git a/.gitignore b/.gitignore
index e1858fb..50b7b11 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,4 +2,3 @@
TAGS
libtfm.a
tfm.h
-tomsfastmath
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..0c2306f
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "tomsfastmath"]
+ path = tomsfastmath
+ url = https://github.com/libtom/tomsfastmath.git
diff --git a/GNUmakefile b/GNUmakefile
index be66adb..c2f02dd 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -1,18 +1,11 @@
-# Download and build libtfm from source with the options we want.
-
-# Commit against which we've been testing. Perhaps we should be using
-# a git subrepository instead of this hack?
-
-URL := https://github.com/libtom/tomsfastmath.git
-COMMIT := e0fe602802e376a971a84ba300ad0aab17165600
+# Use a git submodule to download and build libtfm with the options we want.
# Maximum size of a bignum. See tfm.pdf section 1.3.6 ("Precision
# configuration") for details on how FP_MAX_SIZE works.
BITS := 8192
-
-REPO := $(notdir $(basename ${URL}))
+REPO := tomsfastmath
HDR := ${REPO}/src/headers/tfm.h
LIB := ${REPO}/libtfm.a
@@ -29,11 +22,11 @@ clean:
cd ${REPO}; git clean -dxf
distclean: clean
- rm -rf ${REPO} TAGS
+ git submodule deinit
+ rm -f TAGS
${HDR}:
- git clone --quiet --no-checkout ${URL}
- cd ${REPO}; git checkout --quiet ${COMMIT}
+ git submodule update --init
${LIB}: ${HDR}
ifeq "" "${SHA256SUM}"
diff --git a/tomsfastmath b/tomsfastmath
new file mode 160000
+Subproject e0fe602802e376a971a84ba300ad0aab1716560