aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile8
-rw-r--r--Makefile.extr8
-rwxr-xr-xconfigure7
3 files changed, 15 insertions, 8 deletions
diff --git a/Makefile b/Makefile
index 6ed50ce2..d6df22f0 100644
--- a/Makefile
+++ b/Makefile
@@ -49,7 +49,7 @@ FLOCQ=\
# General-purpose libraries (in lib/)
-LIB=Axioms.v Coqlib.v Intv.v Maps.v Heaps.v Lattice.v Ordered.v \
+VLIB=Axioms.v Coqlib.v Intv.v Maps.v Heaps.v Lattice.v Ordered.v \
Iteration.v Integers.v Archi.v Fappli_IEEE_extra.v Floats.v \
Parmov.v UnionFind.v Wfsimpl.v \
Postorder.v FSetAVLplus.v IntvSets.v
@@ -112,7 +112,7 @@ DRIVER=Compopts.v Compiler.v Complements.v
# All source files
-FILES=$(LIB) $(COMMON) $(BACKEND) $(CFRONTEND) $(DRIVER) $(FLOCQ) \
+FILES=$(VLIB) $(COMMON) $(BACKEND) $(CFRONTEND) $(DRIVER) $(FLOCQ) \
$(PARSERVALIDATOR) $(PARSER)
all:
@@ -174,9 +174,9 @@ doc/coq2html.ml: doc/coq2html.mll
ocamllex -q doc/coq2html.mll
tools/ndfun: tools/ndfun.ml
- ocamlopt -o tools/ndfun str.cmxa tools/ndfun.ml
+ ocamlopt -o tools/ndfun str.cmxa tools/ndfun.ml $(LINKERSPEC)
tools/modorder: tools/modorder.ml
- ocamlopt -o tools/modorder str.cmxa tools/modorder.ml
+ ocamlopt -o tools/modorder str.cmxa tools/modorder.ml $(LINKERSPEC)
latexdoc:
cd doc; $(COQDOC) --latex -o doc/doc.tex -g $(FILES)
diff --git a/Makefile.extr b/Makefile.extr
index 35ae5f7b..2afd6e31 100644
--- a/Makefile.extr
+++ b/Makefile.extr
@@ -90,11 +90,11 @@ CCOMP_OBJS:=$(shell $(MODORDER) driver/Driver.cmx)
ccomp: $(CCOMP_OBJS)
@echo "Linking $@"
- @$(OCAMLOPT) -o $@ $(LIBS) $+
+ @$(OCAMLOPT) -o $@ $(LIBS) $+ $(LINKERSPEC)
ccomp.byte: $(CCOMP_OBJS:.cmx=.cmo)
@echo "Linking $@"
- @$(OCAMLC) -o $@ $(LIBS:.cmxa=.cma) $+
+ @$(OCAMLC) -o $@ $(LIBS:.cmxa=.cma) $+ $(LINKERSPEC)
ifeq ($(CCHECKLINK),true)
@@ -156,6 +156,10 @@ clean:
rm -f $(GENERATED)
for d in $(ALLDIRS); do rm -f $$d/*.cm[iox] $$d/*.o; done
+cleansource:
+ rm -f $(EXECUTABLES)
+ for d in $(ALLDIRS); do rm -f $$d/*.cm[iox] $$d/*.o; done
+
# Generation of .depend.extr
depend: $(GENERATED)
diff --git a/configure b/configure
index 10b2c2f1..447bc0a2 100755
--- a/configure
+++ b/configure
@@ -18,6 +18,7 @@ libdir='$(PREFIX)/lib/compcert'
toolprefix=''
target=''
has_runtime_lib=true
+build_checklink=true
usage='Usage: ./configure [options] target
@@ -64,6 +65,8 @@ while : ; do
toolprefix="$2"; shift;;
-no-runtime-lib)
has_runtime_lib=false; shift;;
+ -no-checklink)
+ build_checklink=false; shift;;
*)
if test -n "$target"; then echo "$usage" 1>&2; exit 2; fi
target="$1";;
@@ -89,7 +92,7 @@ case "$target" in
casmruntime="${toolprefix}gcc -c -Wa,-mregnames"
clinker="${toolprefix}gcc"
libmath="-lm"
- cchecklink=true;;
+ cchecklink=${build_checklink};;
powerpc-eabi-diab|ppc-eabi-diab)
arch="powerpc"
model="standard"
@@ -101,7 +104,7 @@ case "$target" in
asm_supports_cfi=false
clinker="${toolprefix}dcc"
libmath="-lm"
- cchecklink=true;;
+ cchecklink=${build_checklink};;
arm*-*)
arch="arm"
case "$target" in