nixpkgs/pkgs/development/coq-modules/vcfloat/default.nix
Yueh-Shun Li 91b3db1309 treewide: fix sourceRoot for fetchgit-based src
According to Nixpkgs manual[1] and NixOS 23.11 Release Note[2], the
`sourceRoot` attribute passed to `stdenv.mkDerivation` should be
specified as `"${src.name}"` or `"${src.name}/subdir"` when `src` is
produced using `fetchgit`-based fetchers.

`sourceRoot = "source"` or `sourceRoot = "source/subdir"` is based on
the assumption that the `name` attribute of these pre-unpacked fetchers
are always `"source"`, which is not the case. Expecting constant `name`
also makes the source FODs prone to irrelevent hashes during version
bumps.

[1]: https://nixos.org/manual/nixpkgs/unstable/#var-stdenv-sourceRoot
[2]: https://nixos.org/manual/nixos/stable/release-notes#sec-release-23.11
2024-03-09 07:53:25 +08:00

26 lines
790 B
Nix

{ lib, mkCoqDerivation, coq, interval, compcert, flocq, bignums, version ? null }:
let self = with lib; mkCoqDerivation {
pname = "vcfloat";
owner = "VeriNum";
inherit version;
sourceRoot = "${self.src.name}/vcfloat";
postPatch = ''
coq_makefile -o Makefile -f _CoqProject *.v
'';
defaultVersion = with versions; switch coq.coq-version [
{ case = range "8.16" "8.17"; out = "2.1.1"; }
] null;
release."2.1.1".sha256 = "sha256-bd/XSQhyFUAnSm2bhZEZBWB6l4/Ptlm9JrWu6w9BOpw=";
releaseRev = v: "v${v}";
propagatedBuildInputs = [ interval compcert flocq bignums ];
meta = {
description = "A tool for Coq proofs about floating-point round-off error";
maintainers = with maintainers; [ quinn-dougherty ];
license = licenses.lgpl3Plus;
};
};
in self