From 22c2fef365d5a1a918bfd73b7aa58defd3d1b011 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Fri, 8 Jul 2022 07:22:45 +0200 Subject: [PATCH] nvc: init at 1.6.2 --- .../science/electronics/nvc/default.nix | 67 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 69 insertions(+) create mode 100644 pkgs/applications/science/electronics/nvc/default.nix diff --git a/pkgs/applications/science/electronics/nvc/default.nix b/pkgs/applications/science/electronics/nvc/default.nix new file mode 100644 index 000000000000..3def53dbd2e4 --- /dev/null +++ b/pkgs/applications/science/electronics/nvc/default.nix @@ -0,0 +1,67 @@ +{ 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 ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5092e04fe974..acd988cb519c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -33986,6 +33986,8 @@ with pkgs; ngspice = callPackage ../applications/science/electronics/ngspice { }; + nvc = callPackage ../applications/science/electronics/nvc { }; + openems = callPackage ../applications/science/electronics/openems { qcsxcad = libsForQt5.qcsxcad; };