From b5ad6154743436b5acc791ccec5cde4be36dd18b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Sun, 28 Oct 2018 20:43:34 +0000 Subject: [PATCH 1/2] verasco: remove unmaintained project Verasco is no longer maintained by upstream and blocks updates of some libraries. Removing it also makes it possible to remove coq 8.4. --- .../tools/analysis/verasco/default.nix | 51 ------------------- pkgs/top-level/all-packages.nix | 4 -- pkgs/top-level/ocaml-packages.nix | 10 ---- 3 files changed, 65 deletions(-) delete mode 100644 pkgs/development/tools/analysis/verasco/default.nix diff --git a/pkgs/development/tools/analysis/verasco/default.nix b/pkgs/development/tools/analysis/verasco/default.nix deleted file mode 100644 index 7f623e72dc31..000000000000 --- a/pkgs/development/tools/analysis/verasco/default.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ stdenv, lib, fetchurl -, coq, ocaml, findlib, menhir, zarith -, tools ? stdenv.cc -}: - -assert lib.versionAtLeast ocaml.version "4.02"; - -stdenv.mkDerivation rec { - name = "verasco-1.3"; - src = fetchurl { - url = "http://compcert.inria.fr/verasco/release/${name}.tgz"; - sha256 = "0zvljrpwnv443k939zlw1f7ijwx18nhnpr8jl3f01jc5v66hr2k8"; - }; - - buildInputs = [ coq ocaml findlib menhir zarith ]; - - preConfigure = '' - substituteInPlace ./configure --replace '{toolprefix}gcc' '{toolprefix}cc' - ''; - - configureFlags = [ - "-toolprefix ${tools}/bin/" - (if stdenv.isDarwin then "ia32-macosx" else "ia32-linux") - ]; - - prefixKey = "-prefix "; - - enableParallelBuilding = true; - buildFlags = "proof extraction ccheck"; - - installPhase = '' - mkdir -p $out/bin - cp ccheck $out/bin/ - ln -s $out/bin/ccheck $out/bin/verasco - if [ -e verasco.ini ] - then - mkdir -p $out/share - cp verasco.ini $out/share/ - fi - mkdir -p $out/lib/compcert - cp -riv runtime/include $out/lib/compcert - ''; - - meta = { - homepage = http://compcert.inria.fr/verasco/; - description = "A static analyzer for the CompCert subset of ISO C 1999"; - maintainers = with stdenv.lib.maintainers; [ vbgl ]; - license = stdenv.lib.licenses.unfree; - platforms = with stdenv.lib.platforms; darwin ++ linux; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5179e1f3a58a..5127ad2421c7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8984,10 +8984,6 @@ with pkgs; qcachegrind = libsForQt5.callPackage ../development/tools/analysis/qcachegrind {}; - verasco = ocaml-ng.ocamlPackages_4_02.verasco.override { - coq = coq_8_4; - }; - visualvm = callPackage ../development/tools/java/visualvm { }; vultr = callPackage ../development/tools/vultr { }; diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 62b773c51bf6..2f6992e1c9a5 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -1024,16 +1024,6 @@ let omake_rc1 = callPackage ../development/tools/ocaml/omake/0.9.8.6-rc1.nix { }; - verasco = callPackage ../development/tools/analysis/verasco (( - if system == "x86_64-linux" - then { tools = pkgs.pkgsi686Linux.stdenv.cc; } - else {} - ) // { - menhir = callPackage ../development/ocaml-modules/menhir { - version = "20170712"; - }; - }); - google-drive-ocamlfuse = callPackage ../applications/networking/google-drive-ocamlfuse { }; From 8df0ca2bbcc98a787fccf623a91f5ea79161fce9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Sun, 28 Oct 2018 20:45:04 +0000 Subject: [PATCH 2/2] coq_8_4: remove verasco was its only user --- pkgs/applications/science/logic/coq/8.4.nix | 97 ------------------- .../science/logic/coq/configure.patch | 11 --- pkgs/top-level/all-packages.nix | 2 +- pkgs/top-level/coq-packages.nix | 3 - 4 files changed, 1 insertion(+), 112 deletions(-) delete mode 100644 pkgs/applications/science/logic/coq/8.4.nix delete mode 100644 pkgs/applications/science/logic/coq/configure.patch diff --git a/pkgs/applications/science/logic/coq/8.4.nix b/pkgs/applications/science/logic/coq/8.4.nix deleted file mode 100644 index c3da1205ab0c..000000000000 --- a/pkgs/applications/science/logic/coq/8.4.nix +++ /dev/null @@ -1,97 +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, fetchurl, pkgconfig, writeText, ocaml, findlib, camlp5, ncurses, lablgtk ? null, csdp ? null}: - -let - version = "8.4pl6"; - coq-version = "8.4"; - buildIde = lablgtk != null; - ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else ""; - csdpPatch = if csdp != null then '' - substituteInPlace plugins/micromega/sos.ml --replace "; csdp" "; ${csdp}/bin/csdp" - substituteInPlace plugins/micromega/coq_micromega.ml --replace "System.is_in_system_path \"csdp\"" "true" - '' else ""; - -self = -stdenv.mkDerivation { - name = "coq-${version}"; - - inherit coq-version; - inherit ocaml camlp5; - - src = fetchurl { - url = "https://coq.inria.fr/distrib/V${version}/files/coq-${version}.tar.gz"; - sha256 = "1mpbj4yf36kpjg2v2sln12i8dzqn8rag6fd07hslj2lpm4qs4h55"; - }; - - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ ocaml findlib camlp5 ncurses lablgtk ]; - - patches = [ ./configure.patch ]; - - postPatch = '' - UNAME=$(type -tp uname) - RM=$(type -tp rm) - substituteInPlace configure --replace "/bin/uname" "$UNAME" - substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM" - ${csdpPatch} - ''; - - preConfigure = '' - configureFlagsArray=( - -opt - -camldir ${ocaml}/bin - -camlp5dir $(ocamlfind query camlp5) - ${ideFlags} - ) - ''; - - prefixKey = "-prefix "; - - buildFlags = "revision coq coqide"; - - setupHook = writeText "setupHook.sh" '' - addCoqPath () { - if test -d "''$1/lib/coq/${coq-version}/user-contrib"; then - export COQPATH="''${COQPATH}''${COQPATH:+:}''$1/lib/coq/${coq-version}/user-contrib/" - fi - } - - addEnvHooks "$targetOffset" addCoqPath - ''; - - passthru = { - inherit findlib; - emacsBufferSetup = pkgs: '' - ; Propagate coq paths to children - (inherit-local-permanent coq-prog-name "${self}/bin/coqtop") - (inherit-local-permanent coq-dependency-analyzer "${self}/bin/coqdep") - (inherit-local-permanent coq-compiler "${self}/bin/coqc") - ; If the coq-library path was already set, re-set it based on our current coq - (when (fboundp 'get-coq-library-directory) - (inherit-local-permanent coq-library-directory (get-coq-library-directory)) - (coq-prog-args)) - (mapc (lambda (arg) - (when (file-directory-p (concat arg "/lib/coq/${coq-version}/user-contrib")) - (setenv "COQPATH" (concat (getenv "COQPATH") ":" arg "/lib/coq/${coq-version}/user-contrib")))) '(${stdenv.lib.concatStringsSep " " (map (pkg: "\"${pkg}\"") pkgs)})) - ''; - }; - - meta = with stdenv.lib; { - description = "Formal proof management system"; - 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 = coq-version; - maintainers = with maintainers; [ roconnor thoughtpolice vbgl ]; - platforms = platforms.unix; - }; -}; in self diff --git a/pkgs/applications/science/logic/coq/configure.patch b/pkgs/applications/science/logic/coq/configure.patch deleted file mode 100644 index aa38ce06e92b..000000000000 --- a/pkgs/applications/science/logic/coq/configure.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -Nuar coq-8.3pl3-orig/configure coq-8.3pl3/configure ---- coq-8.3pl3-orig/configure 2011-12-19 22:57:30.000000000 +0100 -+++ coq-8.3pl3/configure 2012-03-17 16:38:16.000000000 +0100 -@@ -395,7 +395,6 @@ - ocamlyaccexec=$CAMLBIN/ocamlyacc - ocamlmktopexec=$CAMLBIN/ocamlmktop - ocamlmklibexec=$CAMLBIN/ocamlmklib -- camlp4oexec=$CAMLBIN/camlp4o - esac - - if test ! -f "$CAMLC" ; then diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5127ad2421c7..f98bf64fdf7b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21364,7 +21364,7 @@ with pkgs; ocamlPackages_4_05 ; }) mkCoqPackages - coq_8_4 coq_8_5 coq_8_6 coq_8_7 coq_8_8 + 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 ; diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix index 75e9506ac049..a4f44b6fc6f7 100644 --- a/pkgs/top-level/coq-packages.nix +++ b/pkgs/top-level/coq-packages.nix @@ -56,9 +56,6 @@ in rec { let self = mkCoqPackages' self coq; in filterCoqPackages coq self; - coq_8_4 = callPackage ../applications/science/logic/coq/8.4.nix { - inherit (ocamlPackages_4_02) ocaml findlib lablgtk camlp5; - }; coq_8_5 = callPackage ../applications/science/logic/coq { ocamlPackages = ocamlPackages_4_05; version = "8.5pl3";