anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / applications / science / electronics / nvc / default.nix
blob0ec5dcb683a553b391eb64c6adccf2b53aeee55c
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , autoreconfHook
5 , check
6 , flex
7 , pkg-config
8 , which
9 , elfutils
10 , libffi
11 , llvm
12 , zlib
13 , zstd
16 stdenv.mkDerivation rec {
17   pname = "nvc";
18   version = "1.14.1";
20   src = fetchFromGitHub {
21     owner = "nickg";
22     repo = "nvc";
23     rev = "r${version}";
24     hash = "sha256-EPnHm2bZCui8K/H1a6+pgec3Lrf+zAlFoKYBnLspdQQ=";
25   };
27   nativeBuildInputs = [
28     autoreconfHook
29     check
30     flex
31     pkg-config
32     which
33   ];
35   buildInputs = [
36     libffi
37     llvm
38     zlib
39     zstd
40   ] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [
41     elfutils
42   ];
44   preConfigure = ''
45     mkdir build
46     cd build
47   '';
49   configureScript = "../configure";
51   configureFlags = [
52     "--enable-vhpi"
53     "--disable-lto"
54   ];
56   doCheck = true;
58   meta = with lib; {
59     description = "VHDL compiler and simulator";
60     mainProgram = "nvc";
61     homepage = "https://www.nickg.me.uk/nvc/";
62     license = licenses.gpl3Plus;
63     maintainers = with maintainers; [ wegank ];
64     platforms = platforms.unix;
65   };