diff options
author | Théo Zimmermann <theo.zimmermann@univ-paris-diderot.fr> | 2018-01-02 13:16:45 +0100 |
---|---|---|
committer | Théo Zimmermann <theo.zimmermann@univ-paris-diderot.fr> | 2018-01-04 10:36:42 +0100 |
commit | f8b45835f78da16ecc89c0b85ed9fbe92ab4a764 (patch) | |
tree | be25917f0f38f9cace1a37400bf71500532c2c17 /configure.ml | |
parent | 2d6e395dead61a49ede6208bc40e16b4b8e68ce4 (diff) |
Update the lower-bound of the lablgtk dependency.
Closes #6509.
Diffstat (limited to 'configure.ml')
-rw-r--r-- | configure.ml | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/configure.ml b/configure.ml index a86b78ba5..eedc01752 100644 --- a/configure.ml +++ b/configure.ml @@ -758,24 +758,20 @@ let get_lablgtkdir () = let check_lablgtk_version src dir = match src with | Manual | Stdlib -> - let test accu f = - if accu then - let test = sprintf "grep -q -w %s %S/glib.mli" f dir in - Sys.command test = 0 - else false - in - let heuristics = [ - "convert_with_fallback"; - "wrap_poll_func"; (** Introduced in lablgtk 2.16 *) - ] in - let ans = List.fold_left test true heuristics in - if ans then printf "Warning: could not check the version of lablgtk2.\n"; - (ans, "an unknown version") + printf "Warning: could not check the version of lablgtk2.\nMake sure your version is at least 2.18.3.\n"; + (true, "an unknown version") | OCamlFind -> let v, _ = tryrun camlexec.find ["query"; "-format"; "%v"; "lablgtk2"] in try let vi = List.map s2i (numeric_prefix_list v) in - ([2; 16] <= vi, v) + if vi = [2; 18; 0] then + begin + (* Version 2.18.3 is known to report incorrectly as 2.18.0 *) + printf "Warning: could not check the version of lablgtk2.\nMake sure your version is at least 2.18.3.\n"; + (true, "an unknown version") + end + else + ([2; 18; 3] <= vi, v) with _ -> (false, v) let pr_ide = function No -> "no" | Byte -> "only bytecode" | Opt -> "native" @@ -802,7 +798,7 @@ let check_coqide () = if dir = "" then set_ide No "LablGtk2 not found"; let (ok, version) = check_lablgtk_version via dir in let found = sprintf "LablGtk2 found (%s, %s)" (get_source via) version in - if not ok then set_ide No (found^", but too old (required >= 2.16, found " ^ version ^ ")"); + if not ok then set_ide No (found^", but too old (required >= 2.18.3, found " ^ version ^ ")"); (* We're now sure to produce at least one kind of coqide *) lablgtkdir := shorten_camllib dir; if !Prefs.coqide = Some Byte then set_ide Byte (found^", bytecode requested"); |