summary refs log tree commit diff
diff options
context:
space:
mode:
authorLuflosi <luflosi@luflosi.de>2023-09-06 10:19:25 +0200
committerLuflosi <luflosi@luflosi.de>2023-09-12 16:25:21 +0200
commitb82d963e7bc6a29e90b6a9a9dd70d6c068271e80 (patch)
tree69f664121d0deba4cf89b7523f98fc5264f6b4ed
parentba33a55822e463e1bfb3a3c69e694c8600ff7142 (diff)
downloadnixpkgs-b82d963e7bc6a29e90b6a9a9dd70d6c068271e80.tar
nixpkgs-b82d963e7bc6a29e90b6a9a9dd70d6c068271e80.tar.gz
nixpkgs-b82d963e7bc6a29e90b6a9a9dd70d6c068271e80.tar.bz2
nixpkgs-b82d963e7bc6a29e90b6a9a9dd70d6c068271e80.tar.lz
nixpkgs-b82d963e7bc6a29e90b6a9a9dd70d6c068271e80.tar.xz
nixpkgs-b82d963e7bc6a29e90b6a9a9dd70d6c068271e80.tar.zst
nixpkgs-b82d963e7bc6a29e90b6a9a9dd70d6c068271e80.zip
yosys: 0.32 -> 0.33
https://github.com/YosysHQ/yosys/releases/tag/yosys-0.33

A patch needed to be adapted to fix this error on macOS:
```
+ clang -std=c++11 -o yosys-always_full -I../.. always_full_tb.cc -lstdc++
In file included from always_full_tb.cc:1:
In file included from ./yosys-always_full.cc:1:
../../backends/cxxrtl/cxxrtl.h:29:10: fatal error: 'cstddef' file not found
#include <cstddef>
         ^~~~~~~~~
1 error generated.
make: *** [Makefile:885: test] Error 1
```
-rw-r--r--pkgs/development/compilers/yosys/default.nix4
-rw-r--r--pkgs/development/compilers/yosys/fix-clang-build.patch28
2 files changed, 27 insertions, 5 deletions
diff --git a/pkgs/development/compilers/yosys/default.nix b/pkgs/development/compilers/yosys/default.nix
index 6ce2cc9f162..ae7a653d747 100644
--- a/pkgs/development/compilers/yosys/default.nix
+++ b/pkgs/development/compilers/yosys/default.nix
@@ -71,13 +71,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname   = "yosys";
-  version = "0.32";
+  version = "0.33";
 
   src = fetchFromGitHub {
     owner = "YosysHQ";
     repo  = "yosys";
     rev   = "${pname}-${version}";
-    hash  = "sha256-ER61pIvXNjV74A9LwxeXDXoQFkVgqjdI9KiYQyOobk8=";
+    hash  = "sha256-3MsWF161pqqeAbmeTlkQY6UpU4pq1WT0XXK9yciwt0M=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/yosys/fix-clang-build.patch b/pkgs/development/compilers/yosys/fix-clang-build.patch
index f44d60d7e6e..e81ddefcd9c 100644
--- a/pkgs/development/compilers/yosys/fix-clang-build.patch
+++ b/pkgs/development/compilers/yosys/fix-clang-build.patch
@@ -1,8 +1,8 @@
 diff --git a/Makefile b/Makefile
-index 86abc6958..a72f7b792 100644
+index fa95b7b70..4d15ed721 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -187,7 +192,7 @@ endif
+@@ -215,7 +215,7 @@ ABC_ARCHFLAGS += "-DABC_NO_RLIMIT"
  endif
  
  ifeq ($(CONFIG),clang)
@@ -10,4 +10,26 @@ index 86abc6958..a72f7b792 100644
 +CXX = clang++
  LD = clang++
  CXXFLAGS += -std=$(CXXSTD) -Os
- ABCMKARGS += ARCHFLAGS="-DABC_USE_STDINT_H"
+ ABCMKARGS += ARCHFLAGS="-DABC_USE_STDINT_H -Wno-c++11-narrowing $(ABC_ARCHFLAGS)"
+diff --git a/tests/fmt/run-test.sh b/tests/fmt/run-test.sh
+index 914a72347..bc0b129d2 100644
+--- a/tests/fmt/run-test.sh
++++ b/tests/fmt/run-test.sh
+@@ -51,7 +51,7 @@ test_cxxrtl () {
+ 	local subtest=$1; shift
+ 
+ 	../../yosys -p "read_verilog ${subtest}.v; proc; clean; write_cxxrtl -print-output std::cerr yosys-${subtest}.cc"
+-	${CC:-gcc} -std=c++11 -o yosys-${subtest} -I../.. ${subtest}_tb.cc -lstdc++
++	${CXX:-gcc} -std=c++11 -o yosys-${subtest} -I../.. ${subtest}_tb.cc -lstdc++
+ 	./yosys-${subtest} 2>yosys-${subtest}.log
+ 	iverilog -o iverilog-${subtest} ${subtest}.v ${subtest}_tb.v
+ 	./iverilog-${subtest} |grep -v '\$finish called' >iverilog-${subtest}.log
+@@ -69,7 +69,7 @@ diff iverilog-always_full.log iverilog-always_full-1.log
+ 
+ ../../yosys -p "read_verilog display_lm.v" >yosys-display_lm.log
+ ../../yosys -p "read_verilog display_lm.v; write_cxxrtl yosys-display_lm.cc"
+-${CC:-gcc} -std=c++11 -o yosys-display_lm_cc -I../.. display_lm_tb.cc -lstdc++
++${CXX:-gcc} -std=c++11 -o yosys-display_lm_cc -I../.. display_lm_tb.cc -lstdc++
+ ./yosys-display_lm_cc >yosys-display_lm_cc.log
+ for log in yosys-display_lm.log yosys-display_lm_cc.log; do
+ 	grep "^%l: \\\\bot\$" "$log"