From fbe03679bd185b86a5d9057b07875a425bc4021e Mon Sep 17 00:00:00 2001 From: Virgile Prevosto <virgile.prevosto@m4x.org> Date: Tue, 24 Jul 2018 19:31:23 +0200 Subject: [PATCH] [Makefile] Moves definitions of transitioning functions closer to their use `configure` should not be bothered with defining macros for generating `transitioning.ml`. This belongs to `Makefile.generating` --- Makefile.generating | 12 ++++++++++++ configure.in | 29 ++++++++--------------------- share/Makefile.config.in | 6 +----- 3 files changed, 21 insertions(+), 26 deletions(-) diff --git a/Makefile.generating b/Makefile.generating index eb802f07195..e8248203739 100644 --- a/Makefile.generating +++ b/Makefile.generating @@ -122,6 +122,18 @@ endif GENERATED+= src/libraries/utils/json.ml src/libraries/stdlib/transitioning.ml +ifeq ($(HAS_OCAML403),yes) + STACK_FOLD=Stack.fold +else + STACK_FOLD=stack_fold +endif + +ifeq ($(HAS_OCAML404),yes) + SPLIT_ON_CHAR=String.split_on_char +else + SPLIT_ON_CHAR=split_on_char +endif + src/libraries/stdlib/transitioning.ml: \ src/libraries/stdlib/transitioning.ml.in \ Makefile.generating share/Makefile.config diff --git a/configure.in b/configure.in index 7dc81018123..0c8da690508 100644 --- a/configure.in +++ b/configure.in @@ -113,29 +113,12 @@ case $OCAMLVERSION in OCAML_ANNOT_OPTION="-bin-annot";; esac -AC_SUBST(SPLIT_ON_CHAR) -AC_SUBST(STACK_FOLD) - -case $OCAMLVERSION in - 4.02.*) - SPLIT_ON_CHAR=split_on_char; - STACK_FOLD=stack_fold - ;; - 4.03.*) - SPLIT_ON_CHAR=split_on_char; - STACK_FOLD=Stack.fold - ;; - *) - SPLIT_ON_CHAR=String.split_on_char; - STACK_FOLD=Stack.fold - ;; -esac - AC_SUBST(OCAMLMAJORNB) AC_SUBST(OCAMLMINORNB) AC_SUBST(OCAMLPATCHNB) AC_SUBST(HAS_OCAML403) +AC_SUBST(HAS_OCAML404) AC_SUBST(HAS_OCAML407) OCAMLMAJORNB=$(echo $OCAMLVERSION | cut -f 1 -d .) @@ -150,13 +133,17 @@ else if test $OCAMLMINORNB -lt 3; then HAS_OCAML407=no; else HAS_OCAML403=yes; - if test $OCAMLMINORNB -lt 7; then + if test $OCAMLMINORNB -lt 4; then + HAS_OCAML404=no; + HAS_OCAML407=no; + else if test $OCAMLMINORNB -lt 7; then HAS_OCAML407=no; else HAS_OCAML407=yes; fi; -fi; -fi; + fi; # 404 +fi; # 403 +fi; # MAJORNB -gt 4 # Ocaml library path AC_MSG_CHECKING(OCaml library path) diff --git a/share/Makefile.config.in b/share/Makefile.config.in index ad081789b77..13ec84dc7c8 100644 --- a/share/Makefile.config.in +++ b/share/Makefile.config.in @@ -84,6 +84,7 @@ OCAMLMINORNB ?=@OCAMLMINORNB@ OCAMLPATCHNB ?=@OCAMLPATCHNB@ HAS_OCAML403 ?=@HAS_OCAML403@ +HAS_OCAML404 ?=@HAS_OCAML404@ HAS_OCAML407 ?=@HAS_OCAML407@ NATIVE_THREADS ?=@HAS_NATIVE_THREADS@ @@ -92,11 +93,6 @@ PTESTSBEST ?=@PTESTSBEST@ DEVELOPMENT ?=@DEVELOPMENT@ -# Compatibility across OCaml versions - -SPLIT_ON_CHAR ?= @SPLIT_ON_CHAR@ -STACK_FOLD ?= @STACK_FOLD@ - ############# # Libraries # ############# -- GitLab