diff options
author | Xavier Leroy <xavier.leroy@inria.fr> | 2018-06-06 17:49:27 +0200 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@inria.fr> | 2018-06-06 17:50:28 +0200 |
commit | 4d4e82ae48d34c4930a4e176db8ee54ac5ca2fab (patch) | |
tree | a4fd7700c7211d66b87dd0d9199db0e3ed913576 | |
parent | b8552c55a3c65a3f598d155aeb764e68841ba501 (diff) | |
download | compcert-4d4e82ae48d34c4930a4e176db8ee54ac5ca2fab.tar.gz compcert-4d4e82ae48d34c4930a4e176db8ee54ac5ca2fab.zip |
Ensure compatibility with Menhir before and after version 20180530
Inspired by and adapted from pull request #235 by BenoƮt Viguier.
-rw-r--r-- | Makefile | 2 | ||||
-rwxr-xr-x | configure | 12 |
2 files changed, 10 insertions, 4 deletions
@@ -227,7 +227,7 @@ driver/Version.ml: VERSION >driver/Version.ml cparser/Parser.v: cparser/Parser.vy - $(MENHIR) --coq-lib-path compcert.cparser.MenhirLib --coq cparser/Parser.vy + $(MENHIR) $(MENHIR_FLAGS) --coq cparser/Parser.vy depend: $(GENERATED) depend1 @@ -539,7 +539,9 @@ else ocaml_opt_comp=false fi -MENHIR_REQUIRED=20180530 +MENHIR_REQUIRED=20161201 +MENHIR_NEW_API=20180530 +menhir_flags='' echo "Testing Menhir... " | tr -d '\n' menhir_ver=`menhir --version 2>/dev/null | sed -n -e 's/^.*version \([0-9]*\).*$/\1/p'` case "$menhir_ver" in @@ -547,11 +549,14 @@ case "$menhir_ver" in if test "$menhir_ver" -ge $MENHIR_REQUIRED; then echo "version $menhir_ver -- good!" menhir_includes="-I `menhir --suggest-menhirLib`" - else + if test "$menhir_ver" -ge $MENHIR_NEW_API; then + menhir_flags="--coq-lib-path compcert.cparser.MenhirLib" + fi + else echo "version $menhir_ver -- UNSUPPORTED" echo "Error: CompCert requires Menhir version $MENHIR_REQUIRED or later." missingtools=true - fi;; + fi;; *) echo "NOT FOUND" echo "Error: make sure Menhir version $MENHIR_REQUIRED or later is installed." @@ -635,6 +640,7 @@ SHAREDIR=$sharedir COQDEVDIR=$coqdevdir OCAML_OPT_COMP=$ocaml_opt_comp MENHIR_INCLUDES=$menhir_includes +MENHIR_FLAGS=$menhir_flags COMPFLAGS=-bin-annot EOF |