Skip to content

Commit

Permalink
uhdm: 0.9.1.40 -> 1.45
Browse files Browse the repository at this point in the history
Update UHDM and also fix for Darwin build.
The gtest version used in the project unconditionally uses
/tmp as temporary directory in Darwin and does not honor the
environment variables introduced in gtest 1.12.
Use that gtest version so that it will work in the Hydra
build environment.

Related: NixOS#199919 as this is fixing the Darwin build.

Signed-off-by: Henner Zeller <h.zeller@acm.org>
  • Loading branch information
hzeller authored and rtimush committed Sep 21, 2023
1 parent 965f304 commit 99b6060
Showing 1 changed file with 22 additions and 8 deletions.
30 changes: 22 additions & 8 deletions pkgs/applications/science/logic/uhdm/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,26 +3,46 @@
, fetchFromGitHub
, cmake
, python3
, gtest
, fetchpatch
}:

stdenv.mkDerivation rec {
pname = "UHDM";
version = "0.9.1.40";
version = "1.45";

src = fetchFromGitHub {
owner = "chipsalliance";
repo = pname;
rev = "v${version}";
hash = "sha256-CliKU2WM8B9012aDcS/mTyIf+JcsVsc4uRRi9+FRWbM=";
hash = "sha256-mxQRmI8yUUrSUYa4kUT9URgfqYvuz3V9e1IGjtiHyhc=";
fetchSubmodules = true;
};

# Add ability to use local googletest provided from nix instead of
# the version from the submodule in third_party/. The third_party/ version
# is slightly older and does not work with our hydra Darwin builds that needs
# to set a particular temp directory.
# This patch allows to choose UHDM_USE_HOST_GTEST=On in the cflags.
patches = [
(fetchpatch {
url = "https://github.com/chipsalliance/UHDM/commit/ad60fdb65a7c49fdc8ee3fffdca791f9364af4f5.patch";
sha256 = "sha256-IkwnepWWmBychJ0mu+kaddUEc9jkldIRq+GyJkhrO8A=";
name = "allow-local-gtest.patch";
})
];

nativeBuildInputs = [
cmake
];

buildInputs = [
(python3.withPackages (p: with p; [ orderedmultidict ]))
gtest
];

cmakeFlags = [
"-DUHDM_USE_HOST_GTEST=On"
];

doCheck = true;
Expand All @@ -33,12 +53,6 @@ stdenv.mkDerivation rec {
rm -rf $out/lib/uhdm
'';

prePatch = ''
substituteInPlace CMakeLists.txt --replace \
'capnp compile' \
'capnp compile --src-prefix=''${GENDIR}/..'
'';

meta = {
description = "Universal Hardware Data Model";
homepage = "https://github.com/chipsalliance/UHDM";
Expand Down

0 comments on commit 99b6060

Please sign in to comment.