From c038e6aa48225d0cab47c996d78d86cfcb2a60b5 Mon Sep 17 00:00:00 2001 From: "Emil J. Tywoniak" Date: Sat, 11 May 2024 00:38:51 +0200 Subject: [PATCH] nix: fix abc --- flake.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index d97be4ef671..c03662f744a 100644 --- a/flake.nix +++ b/flake.nix @@ -12,19 +12,24 @@ pkgs = import nixpkgs { inherit system; }; + # TODO: don't override src when ./abc is empty + # which happens when the command used is `nix build` and not `nix build ?submodules=1` + abc-verifier = pkgs.abc-verifier.overrideAttrs(x: y: {src = ./abc;}); customYosys = pkgs.clangStdenv.mkDerivation { name = "yosys"; src = ./. ; buildInputs = with pkgs; [ clang bison flex libffi tcl readline python3 llvmPackages.libcxxClang zlib git pkg-configUpstream ]; checkInputs = with pkgs; [ gtest ]; - propagatedBuildInputs = with pkgs; [ abc-verifier ]; + propagatedBuildInputs = [ abc-verifier ]; preConfigure = "make config-clang"; checkTarget = "test"; installPhase = '' - make install PREFIX=$out + make install PREFIX=$out ABCEXTERNAL=yosys-abc + ln -s ${abc-verifier}/bin/abc $out/bin/yosys-abc ''; + # TODO: this way abc actually doesn't work in yosys buildPhase = '' - make -j$(nproc) + make -j$(nproc) ABCEXTERNAL=yosys-abc ''; meta = with pkgs.lib; { description = "Yosys Open SYnthesis Suite";