ocamlPackages_3_11_2: remove
This requires removing also the Coq 8.3 and Matita 0.5.8 packages. Coq 8.3 was released 8 years ago (2010) and there is no trace left of users of this version (contrary to Coq 8.4, released 2012). It is well over time to remove it. Matita 0.5.8 was released in 2010 and because this version was still used for teaching according to the official website, a legacy release (0.5.9) was released in 5 years later to compile with more recent OCaml libraries. Updating to 0.5.9 (or a more recent version like 0.99.3) should allow getting rid of the dependency on older OCaml but it is hard to test given that the package is already broken before this update.
This commit is contained in:
parent
62cf2840bd
commit
34394a38ef
@ -1,82 +0,0 @@
|
||||
# - coqide compilation can be disabled by setting lablgtk to null;
|
||||
# - The csdp program used for the Micromega tactic is statically referenced.
|
||||
# However, coq can build without csdp by setting it to null.
|
||||
# In this case some Micromega tactics will search the user's path for the csdp program and will fail if it is not found.
|
||||
|
||||
{ stdenv, lib, make, fetchurl
|
||||
, ocaml, findlib, camlp5, ncurses, lablgtk ? null, csdp ? null }:
|
||||
|
||||
assert lib.versionOlder ocaml.version "4";
|
||||
|
||||
let
|
||||
version = "8.3pl4";
|
||||
buildIde = lablgtk != null;
|
||||
ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
|
||||
idePatch = if buildIde then ''
|
||||
substituteInPlace scripts/coqmktop.ml --replace \
|
||||
"\"-I\"; \"+lablgtk2\"" \
|
||||
"\"-I\"; \"$(echo "${lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)\"; \"-I\"; \"$(echo "${lablgtk}"/lib/ocaml/*/site-lib/stublibs)\""
|
||||
'' else "";
|
||||
csdpPatch = if csdp != null then ''
|
||||
substituteInPlace plugins/micromega/sos.ml --replace "; csdp" "; ${csdp}/bin/csdp"
|
||||
substituteInPlace plugins/micromega/coq_micromega.ml --replace "System.search_exe_in_path \"csdp\"" "Some \"${csdp}/bin/csdp\""
|
||||
'' else "";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "coq-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://coq.inria.fr/V${version}/files/coq-${version}.tar.gz";
|
||||
sha256 = "17d3lmchmqir1rawnr52g78srg4wkd7clzpzfsivxc4y1zp6rwkr";
|
||||
};
|
||||
|
||||
buildInputs = [ make ocaml findlib camlp5 ncurses lablgtk ];
|
||||
|
||||
prefixKey = "-prefix ";
|
||||
|
||||
preConfigure = ''
|
||||
configureFlagsArray=(
|
||||
-opt
|
||||
-camldir ${ocaml}/bin
|
||||
-camlp5dir $(ocamlfind query camlp5)
|
||||
${ideFlags}
|
||||
)
|
||||
'';
|
||||
|
||||
buildFlags = "world"; # Debug with "world VERBOSE=1";
|
||||
|
||||
patches = [ ./configure.8.3.patch ];
|
||||
|
||||
postPatch = ''
|
||||
UNAME=$(type -tp uname)
|
||||
RM=$(type -tp rm)
|
||||
substituteInPlace configure --replace "/bin/uname" "$UNAME"
|
||||
substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM"
|
||||
${idePatch}
|
||||
${csdpPatch}
|
||||
'';
|
||||
|
||||
# This post install step is needed to build ssrcoqide from the ssreflect package
|
||||
# It could be made optional, but I see little harm in including it in the default
|
||||
# distribution -- roconnor
|
||||
# This will likely no longer be necessary for coq >= 8.4. -- roconnor
|
||||
postInstall = if buildIde then ''
|
||||
cp ide/*.cmi ide/ide.*a $out/lib/coq/ide/
|
||||
'' else "";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Coq proof assistant";
|
||||
longDescription = ''
|
||||
Coq is a formal proof management system. It provides a formal language
|
||||
to write mathematical definitions, executable algorithms and theorems
|
||||
together with an environment for semi-interactive development of
|
||||
machine-checked proofs.
|
||||
'';
|
||||
homepage = http://coq.inria.fr;
|
||||
license = licenses.lgpl21;
|
||||
branch = "8.3";
|
||||
maintainers = with maintainers; [ roconnor vbgl ];
|
||||
platforms = with platforms; linux;
|
||||
};
|
||||
}
|
File diff suppressed because it is too large
Load Diff
@ -1,19 +0,0 @@
|
||||
diff --git a/Makefile.build b/Makefile.build
|
||||
index 2963a3d..876479c 100644
|
||||
--- a/Makefile.build
|
||||
+++ b/Makefile.build
|
||||
@@ -101,13 +101,8 @@ BYTEFLAGS=$(CAMLDEBUG) $(USERFLAGS)
|
||||
OPTFLAGS=$(CAMLDEBUGOPT) $(CAMLTIMEPROF) $(USERFLAGS)
|
||||
DEPFLAGS= $(LOCALINCLUDES) -I ide -I ide/utils
|
||||
|
||||
-ifeq ($(ARCH),Darwin)
|
||||
-LINKMETADATA=-ccopt "-sectcreate __TEXT __info_plist config/Info-$(notdir $@).plist"
|
||||
-CODESIGN=codesign -s -
|
||||
-else
|
||||
LINKMETADATA=
|
||||
CODESIGN=true
|
||||
-endif
|
||||
|
||||
define bestocaml
|
||||
$(if $(OPT),\
|
||||
|
@ -329,7 +329,7 @@ mapAliases ({
|
||||
callPackage_i686 = pkgsi686Linux.callPackage;
|
||||
|
||||
inherit (ocaml-ng) # added 2016-09-14
|
||||
ocamlPackages_3_11_2 ocamlPackages_3_12_1
|
||||
ocamlPackages_3_12_1
|
||||
ocamlPackages_4_00_1 ocamlPackages_4_01_0 ocamlPackages_4_02
|
||||
ocamlPackages_4_03
|
||||
ocamlPackages_latest;
|
||||
@ -348,7 +348,6 @@ mapAliases ({
|
||||
gst-ffmpeg = pkgs.gst-ffmpeg;
|
||||
};
|
||||
} // (with ocaml-ng; { # added 2016-09-14
|
||||
ocaml_3_11_2 = ocamlPackages_3_11_2.ocaml;
|
||||
ocaml_3_12_1 = ocamlPackages_3_12_1.ocaml;
|
||||
ocaml_4_00_1 = ocamlPackages_4_00_1.ocaml;
|
||||
ocaml_4_01_0 = ocamlPackages_4_01_0.ocaml;
|
||||
|
@ -21148,12 +21148,11 @@ with pkgs;
|
||||
boogie = dotnetPackages.Boogie;
|
||||
|
||||
inherit (callPackage ./coq-packages.nix {
|
||||
inherit (ocaml-ng) ocamlPackages_3_12_1
|
||||
ocamlPackages_4_02
|
||||
inherit (ocaml-ng) ocamlPackages_4_02
|
||||
ocamlPackages_4_05
|
||||
;
|
||||
}) mkCoqPackages
|
||||
coq_8_3 coq_8_4 coq_8_5 coq_8_6 coq_8_7 coq_8_8
|
||||
coq_8_4 coq_8_5 coq_8_6 coq_8_7 coq_8_8
|
||||
coqPackages_8_5 coqPackages_8_6 coqPackages_8_7 coqPackages_8_8
|
||||
coqPackages coq
|
||||
;
|
||||
@ -21232,7 +21231,17 @@ with pkgs;
|
||||
|
||||
ltl2ba = callPackage ../applications/science/logic/ltl2ba {};
|
||||
|
||||
inherit (ocaml-ng.ocamlPackages_3_11_2) matita;
|
||||
#inherit (ocaml-ng.ocamlPackages_3_11_2) matita;
|
||||
|
||||
# Current version is 0.5.8. Official website says:
|
||||
|
||||
# Version 0.5.9, released on December 23, 2014, is an update of version 0.5.8
|
||||
# to compile with the latter OCaml version and libraries.
|
||||
# It is unsupported, but still used for teaching at the University of Bologna.
|
||||
|
||||
# It should allow us removing the dependency on OCaml 3.11 but I haven't been
|
||||
# able to confirm because Matita depends on lablgtkmathview-0.7.2 which
|
||||
# already reports as broken.
|
||||
|
||||
matita_130312 = lowPrio ocamlPackages.matita_130312;
|
||||
|
||||
|
@ -1,6 +1,5 @@
|
||||
{ lib, callPackage, newScope, recurseIntoAttrs
|
||||
, gnumake3
|
||||
, ocamlPackages_3_12_1
|
||||
, ocamlPackages_4_02
|
||||
, ocamlPackages_4_05
|
||||
}:
|
||||
@ -56,12 +55,6 @@ in rec {
|
||||
let self = mkCoqPackages' self coq; in
|
||||
filterCoqPackages coq self;
|
||||
|
||||
coq_8_3 = callPackage ../applications/science/logic/coq/8.3.nix {
|
||||
make = gnumake3;
|
||||
inherit (ocamlPackages_3_12_1) ocaml findlib;
|
||||
camlp5 = ocamlPackages_3_12_1.camlp5_transitional;
|
||||
lablgtk = ocamlPackages_3_12_1.lablgtk_2_14;
|
||||
};
|
||||
coq_8_4 = callPackage ../applications/science/logic/coq/8.4.nix {
|
||||
inherit (ocamlPackages_4_02) ocaml findlib lablgtk;
|
||||
camlp5 = ocamlPackages_4_02.camlp5_transitional;
|
||||
|
@ -1065,8 +1065,6 @@ in rec
|
||||
|
||||
inherit mkOcamlPackages;
|
||||
|
||||
ocamlPackages_3_11_2 = mkOcamlPackages (callPackage ../development/compilers/ocaml/3.11.2.nix { }) (self: super: { lablgtk = self.lablgtk_2_14; });
|
||||
|
||||
ocamlPackages_3_12_1 = mkOcamlPackages (callPackage ../development/compilers/ocaml/3.12.1.nix { }) (self: super: { camlimages = self.camlimages_4_0; });
|
||||
|
||||
ocamlPackages_4_00_1 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.00.1.nix { }) (self: super: { });
|
||||
|
Loading…
Reference in New Issue
Block a user