41
41
fail-fast : false
42
42
matrix :
43
43
include :
44
- - { build_type: 'release', verbose: '0' }
45
44
- { build_type: 'debug', verbose: '0' }
46
45
- { build_type: 'debug', verbose: '1' }
47
46
steps :
71
70
./.github/scripts/build.sh VERBOSE=${{ matrix.verbose }}
72
71
73
72
73
+ BuildVTR :
74
+ name : ' B: Building VTR Release'
75
+ runs-on : ubuntu-24.04
76
+ steps :
77
+ - name : Get number of CPU cores
78
+ uses : SimenB/github-actions-cpu-cores@v2
79
+ id : cpu-cores
80
+
81
+ - name : Install dependencies
82
+ run : ./.github/scripts/install_dependencies.sh
83
+
84
+ -
uses :
hendrikmuhs/[email protected]
85
+
86
+ - name : Build
87
+ env :
88
+ CMAKE_PARAMS : " -DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_IPO_BUILD=off -DVTR_ASSERT_LEVEL=3"
89
+ NUM_PROC : ${{ steps.cpu-cores.outputs.count }}
90
+ run : |
91
+ export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
92
+ make -j${{ steps.cpu-cores.outputs.count}} release
93
+
94
+ - name : Pack Build
95
+ shell : bash
96
+ run : |
97
+ tar -czvf build.tar.gz --exclude='CMakeFiles' --exclude='*.a' --exclude='*.cmake' build/
98
+
99
+ - name : Store Build Artifact
100
+ uses : actions/upload-artifact@v4
101
+ with :
102
+ name : build-release.tar.gz
103
+ path : build.tar.gz
104
+ retention-days : 1
105
+
106
+ - name : Print CCache Statistics
107
+ run : |
108
+ ccache -s
109
+
110
+
74
111
Format :
75
112
runs-on : ubuntu-24.04
76
113
strategy :
@@ -121,11 +158,9 @@ jobs:
121
158
UnitTests :
122
159
name : ' U: C++ Unit Tests'
123
160
runs-on : ubuntu-24.04
161
+ needs : [BuildVTR]
124
162
steps :
125
163
126
- - uses : actions/setup-python@v5
127
- with :
128
- python-version : 3.12.3
129
164
- uses : actions/checkout@v4
130
165
with :
131
166
submodules : ' true'
@@ -136,12 +171,20 @@ jobs:
136
171
137
172
- name : Install dependencies
138
173
run : ./.github/scripts/install_dependencies.sh
174
+
175
+ - name : Download Build Artifact
176
+ uses : actions/download-artifact@v4
177
+ with :
178
+ name : build-release.tar.gz
179
+
180
+ - name : Unpack Build
181
+ shell : bash
182
+ run : |
183
+ tar -xvzf build.tar.gz
139
184
140
185
- name : Test
141
- env :
142
- CMAKE_PARAMS : " -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on"
143
- NUM_PROC : ${{ steps.cpu-cores.outputs.count }}
144
- run : ./.github/scripts/unittest.sh
186
+ run : |
187
+ make test -j${{ steps.cpu-cores.outputs.count }}
145
188
146
189
147
190
# This test builds different variations of VTR (with different CMake Params)
@@ -389,6 +432,7 @@ jobs:
389
432
Parmys :
390
433
name : ' Parmys Basic Test'
391
434
runs-on : ubuntu-24.04
435
+ needs : [BuildVTR]
392
436
steps :
393
437
394
438
- uses : actions/setup-python@v5
@@ -405,16 +449,18 @@ jobs:
405
449
- name : Install dependencies
406
450
run : ./.github/scripts/install_dependencies.sh
407
451
408
- -
uses :
hendrikmuhs/[email protected]
452
+ - name : Download Build Artifact
453
+ uses : actions/download-artifact@v4
454
+ with :
455
+ name : build-release.tar.gz
456
+
457
+ - name : Unpack Build
458
+ shell : bash
459
+ run : |
460
+ tar -xvzf build.tar.gz
409
461
410
462
- name : Test
411
- env :
412
- CMAKE_PARAMS : ' -DVTR_IPO_BUILD=off'
413
- BUILD_TYPE : debug
414
- NUM_PROC : ${{ steps.cpu-cores.outputs.count }}
415
463
run : |
416
- export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
417
- ./.github/scripts/build.sh
418
464
./run_reg_test.py parmys_reg_basic -show_failures -j${{ steps.cpu-cores.outputs.count }}
419
465
420
466
@@ -454,6 +500,7 @@ jobs:
454
500
VQM2BLIF :
455
501
name : ' VQM2BLIF Basic Tests'
456
502
runs-on : ubuntu-24.04
503
+ needs : [BuildVTR]
457
504
steps :
458
505
459
506
- uses : actions/setup-python@v5
@@ -470,15 +517,18 @@ jobs:
470
517
- name : Install dependencies
471
518
run : ./.github/scripts/install_dependencies.sh
472
519
473
- -
uses :
hendrikmuhs/[email protected]
520
+ - name : Download Build Artifact
521
+ uses : actions/download-artifact@v4
522
+ with :
523
+ name : build-release.tar.gz
524
+
525
+ - name : Unpack Build
526
+ shell : bash
527
+ run : |
528
+ tar -xvzf build.tar.gz
474
529
475
530
- name : Test
476
- env :
477
- BUILD_TYPE : release
478
- NUM_PROC : ${{ steps.cpu-cores.outputs.count }}
479
531
run : |
480
- export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
481
- ./.github/scripts/build.sh
482
532
./utils/vqm2blif/test/scripts/test_vqm2blif.sh
483
533
484
534
Compatibility :
@@ -558,6 +608,7 @@ jobs:
558
608
name : ' Coverity Scan'
559
609
needs :
560
610
- Build
611
+ - BuildVTR
561
612
- Format
562
613
- VerifyTestSuites
563
614
- UnitTests
0 commit comments