68 lines
1 KiB
Nix
68 lines
1 KiB
Nix
|
{ lib
|
||
|
, stdenv
|
||
|
, fetchFromGitHub
|
||
|
, autoreconfHook
|
||
|
, check
|
||
|
, flex
|
||
|
, pkg-config
|
||
|
, which
|
||
|
, elfutils
|
||
|
, libelf
|
||
|
, llvm
|
||
|
, zlib
|
||
|
}:
|
||
|
|
||
|
stdenv.mkDerivation rec {
|
||
|
pname = "nvc";
|
||
|
version = "1.6.2";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "nickg";
|
||
|
repo = pname;
|
||
|
rev = "r${version}";
|
||
|
sha256 = "sha256-BtUMpT1MKRFGRlIbCEGo4OBZ/r9es1VRmJdgmk1oZFQ=";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs = [
|
||
|
autoreconfHook
|
||
|
check
|
||
|
flex
|
||
|
pkg-config
|
||
|
which
|
||
|
];
|
||
|
|
||
|
buildInputs = [
|
||
|
llvm
|
||
|
zlib
|
||
|
] ++ [
|
||
|
(if stdenv.isLinux then elfutils else libelf)
|
||
|
];
|
||
|
|
||
|
# TODO: remove me on 1.7.0
|
||
|
postPatch = ''
|
||
|
sed -i "/vests22/d;/vhpi4/d" test/regress/testlist.txt
|
||
|
'';
|
||
|
|
||
|
preConfigure = ''
|
||
|
mkdir build
|
||
|
cd build
|
||
|
'';
|
||
|
|
||
|
configureScript = "../configure";
|
||
|
|
||
|
configureFlags = [
|
||
|
"--enable-vhpi"
|
||
|
"--disable-lto"
|
||
|
];
|
||
|
|
||
|
doCheck = true;
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "VHDL compiler and simulator";
|
||
|
homepage = "https://www.nickg.me.uk/nvc/";
|
||
|
license = licenses.gpl3Plus;
|
||
|
platforms = platforms.unix;
|
||
|
maintainers = with maintainers; [ wegank ];
|
||
|
};
|
||
|
}
|