Merge pull request #48053 from Zimmi48/clean-up/ocaml

Remove old OCaml versions.
This commit is contained in:
Jörg Thalheim 2018-10-09 19:47:41 +01:00 committed by GitHub
commit c0d1c41627
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 2 additions and 1503 deletions

View File

@ -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

View File

@ -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),\

View File

@ -1,65 +0,0 @@
{stdenv, fetchurl, ocaml, findlib, gdome2, ocaml_expat, gmetadom, ocaml_http, lablgtk, ocaml_mysql, ocamlnet, ulex08, camlzip, ocaml_pcre, automake, autoconf }:
let
version = "0.99.1pre130312";
pname = "matita";
in
stdenv.mkDerivation {
name = "${pname}-${version}";
src = fetchurl {
url = "http://matita.cs.unibo.it/sources/${pname}_130312.tar.gz";
sha256 = "13mjvvldv53dcdid6wmc6g8yn98xca26xq2rgq2jg700lqsni59s";
};
sourceRoot="${pname}-${version}";
unpackPhase = ''
mkdir $sourceRoot
tar -xvzf $src -C $sourceRoot
echo "source root is $sourceRoot"
'';
prePatch = ''
autoreconf -fvi
'';
buildInputs = [ocaml findlib gdome2 ocaml_expat gmetadom ocaml_http lablgtk ocaml_mysql ocamlnet ulex08 camlzip ocaml_pcre automake autoconf];
postPatch = ''
BASH=$(type -tp bash)
substituteInPlace components/Makefile --replace "SHELL=/bin/bash" "SHELL=$BASH"
substituteInPlace matita/Makefile --replace "SHELL=/bin/bash" "SHELL=$BASH"
substituteInPlace configure --replace "ulex08" "ulex"
substituteInPlace components/METAS/meta.helm-content_pres.src --replace "ulex08" "ulex"
substituteInPlace components/content_pres/Makefile --replace "ulex08" "ulex"
substituteInPlace components/METAS/meta.helm-grafite_parser.src --replace "ulex08" "ulex"
substituteInPlace components/grafite_parser/Makefile --replace "ulex08" "ulex"
substituteInPlace configure --replace "zip" "camlzip"
substituteInPlace components/METAS/meta.helm-getter.src --replace "zip" "camlzip"
substituteInPlace components/METAS/meta.helm-xml.src --replace "zip" "camlzip"
'';
patches = [ ./configure_130312.patch ];
preConfigure = ''
# Setup for findlib.
OCAMLPATH=$(pwd)/components/METAS:$OCAMLPATH
RTDIR=$out/share/matita
export configureFlags="--with-runtime-dir=$RTDIR"
'';
postInstall = ''
mkdir -p $out/bin
ln -vs $RTDIR/matita $RTDIR/matitac $RTDIR/matitaclean $RTDIR/matitadep $RTDIR/matitawiki $out/bin
'';
meta = {
homepage = http://matita.cs.unibo.it/;
description = "Matita is an experimental, interactive theorem prover";
license = stdenv.lib.licenses.gpl2Plus;
maintainers = [ stdenv.lib.maintainers.roconnor ];
broken = true;
};
}

View File

@ -1,11 +0,0 @@
--- matita-0.5.8/Makefile 2009-12-01 18:21:00.000000000 -0500
+++ matita-0.5.8/Makefile 2010-09-16 10:33:59.665461260 -0400
@@ -38,7 +38,7 @@
uninstall: $(foreach d,$(SUBDIRS),rec@uninstall@$(d))
rec@%:
- $(MAKE) -C $(word 2, $(subst @, ,$*)) $(word 1, $(subst @, ,$*)) DESTDIR=$(shell pwd)/$(DESTDIR)
+ $(MAKE) -C $(word 2, $(subst @, ,$*)) $(word 1, $(subst @, ,$*))
# {{{ Distribution stuff

View File

@ -1,36 +0,0 @@
--- zzz/matita-0.5.8/configure 2009-12-01 18:21:00.000000000 -0500
+++ matita-0.5.8/configure 2010-09-07 19:57:29.732139550 -0400
@@ -1895,6 +1895,7 @@
# look for METAS dir
LIBSPATH="`pwd`/components"
+OLDCAMLPATH="$OCAMLPATH"
OCAMLPATH="$LIBSPATH/METAS"
# creating META.*
@@ -1917,7 +1918,7 @@
gdome2 \
http \
lablgtk2 \
-lablgtksourceview2.gtksourceview2 \
+lablgtk2.gtksourceview \
lablgtkmathview \
mysql \
netstring \
@@ -1951,14 +1952,14 @@
$FINDLIB_CREQUIRES \
lablgtk2.glade \
lablgtkmathview \
-lablgtksourceview2.gtksourceview2 \
+lablgtk2.gtksourceview \
helm-xmldiff \
"
for r in $FINDLIB_LIBSREQUIRES $FINDLIB_REQUIRES
do
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $r ocaml library" >&5
$as_echo_n "checking for $r ocaml library... " >&6; }
- if OCAMLPATH=$OCAMLPATH $OCAMLFIND query $r &> /dev/null; then
+ if OCAMLPATH=$OCAMLPATH:$OLDCAMLPATH $OCAMLFIND query $r &> /dev/null; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
else

View File

@ -1,35 +0,0 @@
--- matita/configure 2011-11-22 06:04:17.000000000 -0500
+++ matita/configure 2011-11-24 11:43:11.584847938 -0500
@@ -1905,6 +1905,7 @@
# look for METAS dir
LIBSPATH="`pwd`/components"
+OLDCAMLPATH="$OCAMLPATH"
OCAMLPATH="$LIBSPATH/METAS"
# creating META.*
@@ -1927,7 +1928,7 @@
gdome2 \
http \
lablgtk2 \
-lablgtksourceview2.gtksourceview2 \
+lablgtk2.gtksourceview \
mysql \
netstring \
ulex08 \
@@ -1953,13 +1954,13 @@
FINDLIB_REQUIRES="\
$FINDLIB_CREQUIRES \
lablgtk2.glade \
-lablgtksourceview2.gtksourceview2 \
+lablgtk2.gtksourceview \
"
for r in $FINDLIB_LIBSREQUIRES $FINDLIB_REQUIRES
do
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $r ocaml library" >&5
$as_echo_n "checking for $r ocaml library... " >&6; }
- if OCAMLPATH=$OCAMLPATH $OCAMLFIND query $r &> /dev/null; then
+ if OCAMLPATH=$OCAMLPATH:$OLDCAMLPATH $OCAMLFIND query $r &> /dev/null; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
else

View File

@ -1,52 +0,0 @@
{stdenv, fetchurl, ocaml, findlib, gdome2, ocaml_expat, gmetadom, ocaml_http, lablgtk, lablgtkmathview, ocaml_mysql, ocaml_sqlite3, ocamlnet, ulex08, camlzip, ocaml_pcre }:
let
version = "0.5.8";
pname = "matita";
in
stdenv.mkDerivation {
name = "${pname}-${version}";
src = fetchurl {
url = "http://matita.cs.unibo.it/FILES/${pname}-${version}.orig.tar.gz";
sha256 = "04sxklfak71khy1f07ks5c6163jbpxv6fmaw03fx8gwwlvpmzglh";
};
buildInputs = [ocaml findlib gdome2 ocaml_expat gmetadom ocaml_http lablgtk lablgtkmathview ocaml_mysql ocaml_sqlite3 ocamlnet ulex08 camlzip ocaml_pcre ];
postPatch = ''
BASH=$(type -tp bash)
substituteInPlace components/Makefile --replace "SHELL=/bin/bash" "SHELL=$BASH"
substituteInPlace matita/Makefile --replace "SHELL=/bin/bash" "SHELL=$BASH"
substituteInPlace configure --replace "ulex08" "ulex"
substituteInPlace components/METAS/meta.helm-content_pres.src --replace "ulex08" "ulex"
substituteInPlace components/content_pres/Makefile --replace "ulex08" "ulex"
substituteInPlace components/METAS/meta.helm-grafite_parser.src --replace "ulex08" "ulex"
substituteInPlace components/grafite_parser/Makefile --replace "ulex08" "ulex"
substituteInPlace configure --replace "zip" "camlzip"
substituteInPlace components/METAS/meta.helm-getter.src --replace "zip" "camlzip"
substituteInPlace components/METAS/meta.helm-xml.src --replace "zip" "camlzip"
'';
patches = [ ./configure.patch ./Makefile.patch ];
preConfigure = ''
# Setup for findlib.
OCAMLPATH=$(pwd)/components/METAS:$OCAMLPATH
RTDIR=$out/share/matita
export configureFlags="--with-runtime-dir=$RTDIR"
'';
postInstall = ''
mkdir -p $out/bin
ln -vs $RTDIR/matita $RTDIR/matitac $RTDIR/matitaclean $RTDIR/matitadep $RTDIR/matitawiki $out/bin
'';
meta = {
homepage = http://matita.cs.unibo.it/;
description = "Experimental, interactive theorem prover";
license = stdenv.lib.licenses.gpl2Plus;
maintainers = [ stdenv.lib.maintainers.roconnor ];
};
}

View File

@ -1,46 +0,0 @@
{stdenv, fetchurl, ocaml, transitional ? false}:
let
pname = "camlp5";
webpage = http://pauillac.inria.fr/~ddr/camlp5/;
metafile = ./META;
in
assert !stdenv.lib.versionOlder "4.00" ocaml.version;
stdenv.mkDerivation rec {
name = "${pname}${if transitional then "_transitional" else ""}-${version}";
version = "5.15";
src = fetchurl {
url = "${webpage}/distrib/src/${pname}-${version}.tgz";
sha256 = "1sx5wlfpydqskm97gp7887p3avbl3vanlmrwj35wx5mbzj6kn9nq";
};
buildInputs = [ ocaml ];
prefixKey = "-prefix ";
preConfigure = "configureFlagsArray=(" + (if transitional then "--transitional" else "--strict") +
" --libdir $out/lib/ocaml/${ocaml.version}/site-lib)";
buildFlags = "world.opt";
postInstall = "cp ${metafile} $out/lib/ocaml/${ocaml.version}/site-lib/camlp5/META";
meta = {
description = "Preprocessor-pretty-printer for OCaml";
longDescription = ''
Camlp5 is a preprocessor and pretty-printer for OCaml programs.
It also provides parsing and printing tools.
'';
homepage = "${webpage}";
license = stdenv.lib.licenses.bsd3;
branch = "5";
platforms = ocaml.meta.platforms or [];
maintainers = [
stdenv.lib.maintainers.z77z
];
};
}

View File

@ -329,7 +329,6 @@ mapAliases ({
callPackage_i686 = pkgsi686Linux.callPackage;
inherit (ocaml-ng) # added 2016-09-14
ocamlPackages_3_10_0 ocamlPackages_3_11_2 ocamlPackages_3_12_1
ocamlPackages_4_00_1 ocamlPackages_4_01_0 ocamlPackages_4_02
ocamlPackages_4_03
ocamlPackages_latest;
@ -348,10 +347,6 @@ mapAliases ({
gst-ffmpeg = pkgs.gst-ffmpeg;
};
} // (with ocaml-ng; { # added 2016-09-14
ocaml_3_08_0 = ocamlPackages_3_08_0.ocaml;
ocaml_3_10_0 = ocamlPackages_3_10_0.ocaml;
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;
ocaml_4_02 = ocamlPackages_4_02.ocaml;

View File

@ -21164,12 +21164,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
;
@ -21248,10 +21247,6 @@ with pkgs;
ltl2ba = callPackage ../applications/science/logic/ltl2ba {};
inherit (ocaml-ng.ocamlPackages_3_11_2) matita;
matita_130312 = lowPrio ocamlPackages.matita_130312;
metis-prover = callPackage ../applications/science/logic/metis-prover { };
mcrl2 = callPackage ../applications/science/logic/mcrl2 { };

View File

@ -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;

View File

@ -88,18 +88,6 @@ let
then callPackage ../development/tools/ocaml/camlp4 { }
else null;
camlp5_old_strict =
if lib.versionOlder "4.00" ocaml.version
then camlp5_6_strict
else callPackage ../development/tools/ocaml/camlp5/5.15.nix { };
camlp5_old_transitional =
if lib.versionOlder "4.00" ocaml.version
then camlp5_6_transitional
else callPackage ../development/tools/ocaml/camlp5/5.15.nix {
transitional = true;
};
camlp5_6_strict = callPackage ../development/tools/ocaml/camlp5 { };
camlp5_6_transitional = callPackage ../development/tools/ocaml/camlp5 {
@ -1063,12 +1051,6 @@ let
camlp5 = camlp5_strict;
};
matita = callPackage ../applications/science/logic/matita {
ulex08 = ulex08.override { camlp5 = camlp5_old_transitional; };
};
matita_130312 = callPackage ../applications/science/logic/matita/130312.nix { };
};
in (ocamlPackages.janeStreet // ocamlPackages);
in lib.fix' (lib.extends overrides packageSet);
@ -1077,14 +1059,6 @@ in rec
inherit mkOcamlPackages;
ocamlPackages_3_08_0 = mkOcamlPackages (callPackage ../development/compilers/ocaml/3.08.0.nix { }) (self: super: { lablgtk = self.lablgtk_2_14; });
ocamlPackages_3_10_0 = mkOcamlPackages (callPackage ../development/compilers/ocaml/3.10.0.nix { }) (self: super: { lablgtk = self.lablgtk_2_14; });
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: { });
ocamlPackages_4_01_0 = mkOcamlPackages (callPackage ../development/compilers/ocaml/4.01.0.nix { }) (self: super: { });