tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
openroad: unstable-2022-07-19 -> unstable-2023-03-31
Nicolas Benes
2 years ago
c59f6c75
a074c7c3
+123
-7
3 changed files
expand all
collapse all
unified
split
pkgs
applications
science
electronics
openroad
0001-Fix-string-formatting-in-tests.patch
0002-Ignore-warning-on-stderr.patch
default.nix
+53
pkgs/applications/science/electronics/openroad/0001-Fix-string-formatting-in-tests.patch
···
1
1
+
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2
2
+
From: Nicolas Benes <nbenes.gh@xandea.de>
3
3
+
Date: Sun, 2 Apr 2023 01:24:51 +0200
4
4
+
Subject: [PATCH] Fix string formatting in tests
5
5
+
6
6
+
Hide the decimal point and digits after the decimal point when they are
7
7
+
not needed.
8
8
+
9
9
+
diff --git a/src/par/test/partition_gcd.ok b/src/par/test/partition_gcd.ok
10
10
+
index 6c40c14..b9a42f6 100644
11
11
+
--- a/src/par/test/partition_gcd.ok
12
12
+
+++ b/src/par/test/partition_gcd.ok
13
13
+
@@ -9,7 +9,7 @@
14
14
+
========================================
15
15
+
[INFO] Partitioning parameters****
16
16
+
[PARAM] Number of partitions = 2
17
17
+
-[PARAM] UBfactor = 1.0
18
18
+
+[PARAM] UBfactor = 1
19
19
+
[PARAM] Vertex dimensions = 1
20
20
+
[PARAM] Hyperedge dimensions = 1
21
21
+
========================================
22
22
+
@@ -118,7 +118,7 @@ After Hyperedge Reduction : num_vertices = 137, num_hyperedges = 251
23
23
+
[V-Refine] Level 2 :: 207, 301, 154.65254
24
24
+
[V-Refine] Level 3 :: 312, 370, 154.65254
25
25
+
[V-Refine] Level 4 :: 469, 451, 154.65254
26
26
+
-[INFO] V-cycle refinement 1 delta cost 0.0
27
27
+
+[INFO] V-cycle refinement 1 delta cost 0
28
28
+
=========================================
29
29
+
[STATUS] Running FC multilevel coarsening
30
30
+
=========================================
31
31
+
@@ -133,7 +133,7 @@ After Hyperedge Reduction : num_vertices = 137, num_hyperedges = 251
32
32
+
[V-Refine] Level 2 :: 207, 301, 154.65254
33
33
+
[V-Refine] Level 3 :: 312, 370, 154.65254
34
34
+
[V-Refine] Level 4 :: 469, 451, 154.65254
35
35
+
-[INFO] V-cycle refinement 2 delta cost 0.0
36
36
+
+[INFO] V-cycle refinement 2 delta cost 0
37
37
+
[Cutcost of partition : 154.65254]
38
38
+
[Vertex balance of block_0 : 0.59249 ( 327.17993 )
39
39
+
[Vertex balance of block_1 : 0.40751 ( 225.03609 )
40
40
+
diff --git a/src/pdn/test/design_width.ok b/src/pdn/test/design_width.ok
41
41
+
index 381dca1..a102974 100644
42
42
+
--- a/src/pdn/test/design_width.ok
43
43
+
+++ b/src/pdn/test/design_width.ok
44
44
+
@@ -9,5 +9,5 @@
45
45
+
[INFO ODB-0130] Created 54 pins.
46
46
+
[INFO ODB-0131] Created 406 components and 1816 component-terminals.
47
47
+
[INFO ODB-0133] Created 361 nets and 1004 connections.
48
48
+
-[ERROR PDN-0185] Insufficient width (14.04 um) to add straps on layer M8 in grid "Core" with total strap width 6.0 um and offset 10.0 um.
49
49
+
+[ERROR PDN-0185] Insufficient width (14.04 um) to add straps on layer M8 in grid "Core" with total strap width 6 um and offset 10 um.
50
50
+
PDN-0185
51
51
+
--
52
52
+
2.38.4
53
53
+
+41
pkgs/applications/science/electronics/openroad/0002-Ignore-warning-on-stderr.patch
···
1
1
+
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2
2
+
From: Nicolas Benes <nbenes.gh@xandea.de>
3
3
+
Date: Sun, 2 Apr 2023 04:57:17 +0200
4
4
+
Subject: [PATCH] Ignore warning on stderr
5
5
+
6
6
+
The following warning is written to stderr, which causes the overall
7
7
+
test to fail:
8
8
+
9
9
+
```
10
10
+
sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
11
11
+
```
12
12
+
13
13
+
diff --git a/src/dst/test/cpp_tests.tcl b/src/dst/test/cpp_tests.tcl
14
14
+
index 9087c2c..63d0cb7 100644
15
15
+
--- a/src/dst/test/cpp_tests.tcl
16
16
+
+++ b/src/dst/test/cpp_tests.tcl
17
17
+
@@ -4,7 +4,7 @@ set test_dir [pwd]
18
18
+
set openroad_dir [file dirname [file dirname [file dirname $test_dir]]]
19
19
+
set tests_path [file join $openroad_dir "build" "src" "dst" "test" "cpp"]
20
20
+
21
21
+
-set tests_list [split [exec sh -c "find $tests_path -maxdepth 1 -name 'Test*'"] \n]
22
22
+
+set tests_list [split [exec -ignorestderr sh -c "find $tests_path -maxdepth 1 -name 'Test*'"] \n]
23
23
+
24
24
+
foreach test $tests_list {
25
25
+
set test_name [file tail $test]
26
26
+
diff --git a/src/odb/test/cpp_tests.tcl b/src/odb/test/cpp_tests.tcl
27
27
+
index 091d576..6811760 100644
28
28
+
--- a/src/odb/test/cpp_tests.tcl
29
29
+
+++ b/src/odb/test/cpp_tests.tcl
30
30
+
@@ -4,7 +4,7 @@ set test_dir [pwd]
31
31
+
set openroad_dir [file dirname [file dirname [file dirname $test_dir]]]
32
32
+
set tests_path [file join $openroad_dir "build" "src" "odb" "test" "cpp"]
33
33
+
34
34
+
-set tests_list [split [exec sh -c "find $tests_path -maxdepth 1 -name 'Test*' ! -name '*.cmake'"] \n]
35
35
+
+set tests_list [split [exec -ignorestderr sh -c "find $tests_path -maxdepth 1 -name 'Test*' ! -name '*.cmake'"] \n]
36
36
+
37
37
+
foreach test $tests_list {
38
38
+
set test_name [file tail $test]
39
39
+
--
40
40
+
2.38.4
41
41
+
+29
-7
pkgs/applications/science/electronics/openroad/default.nix
···
9
9
, python3
10
10
, swig4
11
11
, boost17x
12
12
+
, cbc # for clp
12
13
, cimg
14
14
+
, clp # for or-tools
13
15
, eigen
16
16
+
, glpk
17
17
+
, gtest
14
18
, lcov
15
19
, lemon-graph
16
20
, libjpeg
21
21
+
, or-tools
17
22
, pcre
23
23
+
, pkg-config
18
24
, qtbase
25
25
+
, re2 # for or-tools
19
26
, readline
20
27
, spdlog
21
28
, tcl
···
27
34
28
35
mkDerivation rec {
29
36
pname = "openroad";
30
30
-
version = "unstable-2022-07-19";
37
37
+
version = "unstable-2023-03-31";
31
38
32
39
src = fetchFromGitHub {
33
40
owner = "The-OpenROAD-Project";
34
41
repo = "OpenROAD";
35
35
-
rev = "2610b3953ef62651825d89fb96917cf5d20af0f1";
42
42
+
rev = "cd03c5cf8a8eb78c0e07fe33a56b8e9d64672efe";
36
43
fetchSubmodules = true;
37
37
-
sha256 = "sha256-BP0JSnxl1XyqHzDY4eITaGHevqd+rbjWZy/LAfDfELs=";
44
44
+
hash = "sha256-BWUvFCuWKWQpifErpak03J+A7ni0jZWIrCMhMdKIbD0=";
38
45
};
39
46
40
47
nativeBuildInputs = [
···
43
50
doxygen
44
51
flex
45
52
git
53
53
+
pkg-config
46
54
swig4
47
55
];
48
56
49
57
buildInputs = [
50
58
boost17x
59
59
+
cbc
51
60
cimg
61
61
+
clp
52
62
eigen
63
63
+
glpk
53
64
lcov
54
65
lemon-graph
55
66
libjpeg
67
67
+
or-tools
56
68
pcre
57
69
python3
58
70
qtbase
71
71
+
re2
59
72
readline
60
73
spdlog
61
74
tcl
···
65
78
zlib
66
79
];
67
80
81
81
+
patches = [
82
82
+
./0001-Fix-string-formatting-in-tests.patch
83
83
+
./0002-Ignore-warning-on-stderr.patch
84
84
+
];
85
85
+
68
86
postPatch = ''
69
87
patchShebangs --build etc/find_messages.py
70
88
'';
···
74
92
"-DUSE_SYSTEM_BOOST=ON"
75
93
"-DUSE_CIMG_LIB=ON"
76
94
"-DOPENROAD_VERSION=${src.rev}"
95
95
+
96
96
+
# 2023-03-31: see discussion on fmt workaround in
97
97
+
# https://github.com/The-OpenROAD-Project/OpenROAD/pull/2696
98
98
+
"-DCMAKE_CXX_FLAGS=-DFMT_DEPRECATED_OSTREAM"
77
99
];
78
100
79
101
# Resynthesis needs access to the Yosys binaries.
80
102
qtWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ yosys ]}" ];
103
103
+
104
104
+
checkInputs = [ gtest ];
81
105
82
106
# Upstream uses vendored package versions for some dependencies, so regression testing is prudent
83
107
# to see if there are any breaking changes in unstable that should be vendored as well.
84
84
-
doCheck = false; # Disabled pending upstream release with fix for rcx log file creation.
108
108
+
doCheck = true;
85
109
checkPhase = ''
86
86
-
# Regression tests must be run from the project root not from within the CMake build directory.
87
87
-
cd ..
88
88
-
test/regression
110
110
+
../test/regression
89
111
'';
90
112
91
113
doInstallCheck = true;