surelog: 1.45 -> 1.57

Also, no vendored dependencies anymore, so we can fetch git
without submodules and use the libraries provided from
nix (flatbuffers, uhdm, gtest, antlr).
This commit is contained in:
Henner Zeller 2023-04-15 19:17:42 -07:00 committed by Austin Seipp
parent d2831ca5da
commit e3032b1d78

View file

@ -7,33 +7,24 @@
, libuuid
, openjdk
, gperftools
, gtest
, uhdm
, antlr4
, flatbuffers
, fetchpatch
, capnproto
}:
stdenv.mkDerivation rec {
pname = "surelog";
version = "1.45";
version = "1.57";
src = fetchFromGitHub {
owner = "chipsalliance";
repo = pname;
rev = "v${version}";
hash = "sha256-/SSKcEIhmWDOKN4v3djWTwZ5/nQvR8ibflzSVFDt/rM=";
fetchSubmodules = true;
hash = "sha256-Gty0OSNG5Nonyw7v2KiKP51LhiugMY7uqI6aJ6as0SQ=";
};
# This prevents race conditions in unit tests that surface since we run
# ctest in parallel.
# This patch can be removed with the next version of surelog
patches = [
(fetchpatch {
url = "https://github.com/chipsalliance/Surelog/commit/9a54efbd156becf65311a4272104810f36041fa6.patch";
sha256 = "sha256-rU1Z/0wlVTgnPLqTN/87n+gI1iJ+6k/+sunVVd0ulhQ=";
name = "parallel-test-running.patch";
})
];
nativeBuildInputs = [
cmake
pkg-config
@ -42,16 +33,25 @@ stdenv.mkDerivation rec {
psutil
orderedmultidict
]))
gtest
antlr4
];
buildInputs = [
libuuid
gperftools
flatbuffers
uhdm
capnproto
antlr4.runtime.cpp
];
cmakeFlags = [
"-DSURELOG_USE_HOST_FLATBUFFERS=On"
"-DSURELOG_USE_HOST_UHDM=On"
"-DSURELOG_USE_HOST_GTEST=On"
"-DSURELOG_USE_HOST_ANTLR=On"
"-DANTLR_JAR_LOCATION=${antlr4.jarLocation}"
];
doCheck = true;
@ -62,16 +62,11 @@ stdenv.mkDerivation rec {
runHook postCheck
'';
postInstall = ''
mv $out/lib/surelog/* $out/lib/
mv $out/lib/pkg $out/lib/surelog/
'';
meta = {
description = "SystemVerilog 2017 Pre-processor, Parser, Elaborator, UHDM Compiler";
homepage = "https://github.com/chipsalliance/Surelog";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ matthuszagh ];
platforms = lib.platforms.linux;
platforms = lib.platforms.all;
};
}