99    strategy :
1010      fail-fast : false 
1111      matrix :
12-         openssl-branch :
13-           - " openssl-3.0" 
14-           - " openssl-3.2" 
15-           - " openssl-3.3" 
16-           - " openssl-3.4" 
17-           - " openssl-3.5" 
18-           - " master" 
12+         release : [ 
13+           { 
14+             openssl-branch : " openssl-3.0" , 
15+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"' , 
16+           }, { 
17+             openssl-branch : " openssl-3.2" , 
18+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"' , 
19+           }, { 
20+             openssl-branch : " openssl-3.3" , 
21+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"' , 
22+           }, { 
23+             openssl-branch : " openssl-3.4" , 
24+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"' , 
25+           }, { 
26+             openssl-branch : " openssl-3.5" , 
27+             cmakeopts : ' ' , 
28+           }, { 
29+             openssl-branch : " master" , 
30+             cmakeopts : ' ' , 
31+           } 
32+         ] 
1933    runs-on : " ubuntu-latest" 
2034    container : " docker.io/library/debian:11" 
2135    steps :
2741      uses : " actions/checkout@v5" 
2842      with :
2943        repository : " openssl/openssl" 
30-         ref : ${{ matrix.openssl-branch }} 
44+         ref : ${{ matrix.release. openssl-branch }} 
3145        fetch-depth : 1 
3246        path : " openssl" 
3347    - name : " Config openssl build" 
@@ -49,23 +63,41 @@ jobs:
4963    - name : " Config perftools build" 
5064      working-directory : " ./perftools/source" 
5165      run : | 
52-         cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" 
66+         cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" ${{ matrix.release.cmakeopts }}  
5367name : " Build perftools" 
5468      working-directory : " ./perftools/source" 
5569      run : | 
5670         cmake --build build --config Release 
71+ name : " Run perftools" 
72+       working-directory : " ./perftools/source" 
73+       run : | 
74+          cmake --build build --config Release --target run -j 4 
5775
5876ubuntu-20-04 :
5977    strategy :
6078      fail-fast : false 
6179      matrix :
62-         openssl-branch :
63-           - " openssl-3.0" 
64-           - " openssl-3.2" 
65-           - " openssl-3.3" 
66-           - " openssl-3.4" 
67-           - " openssl-3.5" 
68-           - " master" 
80+         release : [ 
81+           { 
82+             openssl-branch : " openssl-3.0" , 
83+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D OPENSSL_VERSION=3.0' , 
84+           }, { 
85+             openssl-branch : " openssl-3.2" , 
86+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D OPENSSL_VERSION=3.2' , 
87+           }, { 
88+             openssl-branch : " openssl-3.3" , 
89+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D OPENSSL_VERSION=3.3' , 
90+           }, { 
91+             openssl-branch : " openssl-3.4" , 
92+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D OPENSSL_VERSION=3.4' , 
93+           }, { 
94+             openssl-branch : " openssl-3.5" , 
95+             cmakeopts : ' -D OPENSSL_VERSION=3.5' , 
96+           }, { 
97+             openssl-branch : " master" , 
98+             cmakeopts : ' -D OPENSSL_VERSION=4.0' , 
99+           } 
100+         ] 
69101    runs-on : " ubuntu-latest" 
70102    container : " docker.io/library/ubuntu:20.04" 
71103    steps :
79111      uses : " actions/checkout@v5" 
80112      with :
81113        repository : " openssl/openssl" 
82-         ref : ${{ matrix.openssl-branch }} 
114+         ref : ${{ matrix.release. openssl-branch }} 
83115        fetch-depth : 1 
84116        path : " openssl" 
85117    - name : " Config openssl build" 
@@ -101,23 +133,41 @@ jobs:
101133    - name : " Config perftools build" 
102134      working-directory : " ./perftools/source" 
103135      run : | 
104-         cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" 
136+         cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" ${{ matrix.release.cmakeopts }}  
105137name : " Build perftools" 
106138      working-directory : " ./perftools/source" 
107139      run : | 
108140         cmake --build build --config Release 
141+ name : " Run perftools" 
142+       working-directory : " ./perftools/source" 
143+       run : | 
144+          cmake --build build --config Release --target run -j 4 
109145
110146freebsd-13 :
111147    strategy :
112148      fail-fast : false 
113149      matrix :
114-         openssl-branch :
115-           - " openssl-3.0" 
116-           - " openssl-3.2" 
117-           - " openssl-3.3" 
118-           - " openssl-3.4" 
119-           - " openssl-3.5" 
120-           - " master" 
150+         release : [ 
151+           { 
152+             openssl-branch : " openssl-3.0" , 
153+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"' , 
154+           }, { 
155+             openssl-branch : " openssl-3.2" , 
156+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"' , 
157+           }, { 
158+             openssl-branch : " openssl-3.3" , 
159+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"' , 
160+           }, { 
161+             openssl-branch : " openssl-3.4" , 
162+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"' , 
163+           }, { 
164+             openssl-branch : " openssl-3.5" , 
165+             cmakeopts : ' -D "run_handshake_pool_size=handshake;;;-o 4"' , 
166+           }, { 
167+             openssl-branch : " master" , 
168+             cmakeopts : ' ' , 
169+           } 
170+         ] 
121171    runs-on : " ubuntu-latest" 
122172    steps :
123173    - name : " Install prerequisites" 
@@ -132,7 +182,7 @@ jobs:
132182      uses : " actions/checkout@v5" 
133183      with :
134184        repository : " openssl/openssl" 
135-         ref : ${{ matrix.openssl-branch }} 
185+         ref : ${{ matrix.release. openssl-branch }} 
136186        fetch-depth : 1 
137187        path : " openssl" 
138188    - name : " Config openssl build" 
@@ -174,7 +224,7 @@ jobs:
174224        shutdown_vm : false 
175225        run : | 
176226          cd perftools/source 
177-           cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" 
227+           cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" ${{ matrix.release.cmakeopts }}  
178228name : " Build perftools" 
179229      uses : " cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" # v0.27.0
180230      with :
@@ -184,18 +234,41 @@ jobs:
184234        run : | 
185235          cd perftools/source 
186236          cmake --build build --config Release 
237+ name : " Run perftools" 
238+       uses : " cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" # v0.27.0
239+       with :
240+         operating_system : " freebsd" 
241+         version : " 13.4" 
242+         shutdown_vm : false 
243+         run : | 
244+           cd perftools/source 
245+           cmake --build build --config Release --target run -j 4 
187246
188247windows :
189248    strategy :
190249      fail-fast : false 
191250      matrix :
192-         openssl-branch :
193-           - " openssl-3.0" 
194-           - " openssl-3.2" 
195-           - " openssl-3.3" 
196-           - " openssl-3.4" 
197-           - " openssl-3.5" 
198-           - " master" 
251+         release : [ 
252+           { 
253+             openssl-branch : " openssl-3.0" , 
254+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"' , 
255+           }, { 
256+             openssl-branch : " openssl-3.2" , 
257+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"' , 
258+           }, { 
259+             openssl-branch : " openssl-3.3" , 
260+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"' , 
261+           }, { 
262+             openssl-branch : " openssl-3.4" , 
263+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;"' , 
264+           }, { 
265+             openssl-branch : " openssl-3.5" , 
266+             cmakeopts : ' ' , 
267+           }, { 
268+             openssl-branch : " master" , 
269+             cmakeopts : ' ' , 
270+           } 
271+         ] 
199272    runs-on : " windows-latest" 
200273    steps :
201274    - name : " Install prerequisites" 
@@ -206,7 +279,7 @@ jobs:
206279      uses : " actions/checkout@v5" 
207280      with :
208281        repository : " openssl/openssl" 
209-         ref : ${{ matrix.openssl-branch }} 
282+         ref : ${{ matrix.release. openssl-branch }} 
210283        fetch-depth : 1 
211284        path : " openssl" 
212285    - name : " Config openssl build" 
@@ -228,30 +301,48 @@ jobs:
228301    - name : " Config perftools build" 
229302      working-directory : " .\\ perftools\\ source" 
230303      run : | 
231-         cmake -S . -B .\build -DOPENSSL_ROOT_DIR="$env:GITHUB_WORKSPACE\openssl" 
304+         cmake -S . -B .\build -DOPENSSL_ROOT_DIR="$env:GITHUB_WORKSPACE\openssl" ${{ matrix.release.cmakeopts }}  
232305name : " Build perftools" 
233306      working-directory : " .\\ perftools\\ source" 
234307      run : | 
235308         cmake --build .\build --config Release 
309+ name : " Run perftools" 
310+       working-directory : " .\\ perftools\\ source" 
311+       run : | 
312+          cmake --build .\build --config Release --target run -j 4 
236313
237314macos :
238315    strategy :
239316      fail-fast : false 
240317      matrix :
241-         openssl-branch :
242-           - " openssl-3.0" 
243-           - " openssl-3.2" 
244-           - " openssl-3.3" 
245-           - " openssl-3.4" 
246-           - " openssl-3.5" 
247-           - " master" 
318+         release : [ 
319+           { 
320+             openssl-branch : " openssl-3.0" , 
321+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"' , 
322+           }, { 
323+             openssl-branch : " openssl-3.2" , 
324+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"' , 
325+           }, { 
326+             openssl-branch : " openssl-3.3" , 
327+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"' , 
328+           }, { 
329+             openssl-branch : " openssl-3.4" , 
330+             cmakeopts : ' -D "run_newrawkey_algos=newrawkey;-a;x25519" -D "run_evp_fetch_pqs=evp_fetch;;" -D "run_handshake_pool_size=handshake;;;-o 4"' , 
331+           }, { 
332+             openssl-branch : " openssl-3.5" , 
333+             cmakeopts : ' -D "run_handshake_pool_size=handshake;;;-o 4"' , 
334+           }, { 
335+             openssl-branch : " master" , 
336+             cmakeopts : ' ' , 
337+           } 
338+         ] 
248339    runs-on : " macos-latest" 
249340    steps :
250341    - name : " Checkout openssl" 
251342      uses : " actions/checkout@v5" 
252343      with :
253344        repository : " openssl/openssl" 
254-         ref : ${{ matrix.openssl-branch }} 
345+         ref : ${{ matrix.release. openssl-branch }} 
255346        fetch-depth : 1 
256347        path : " openssl" 
257348    - name : " Config openssl build" 
@@ -273,8 +364,12 @@ jobs:
273364    - name : " Config perftools build" 
274365      working-directory : " ./perftools/source" 
275366      run : | 
276-         cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" 
367+         cmake -S . -B build -DOPENSSL_ROOT_DIR="$GITHUB_WORKSPACE/openssl" ${{ matrix.release.cmakeopts }}  
277368name : " Build perftools" 
278369      working-directory : " ./perftools/source" 
279370      run : | 
280371         cmake --build build --config Release 
372+ name : " Run perftools" 
373+       working-directory : " ./perftools/source" 
374+       run : | 
375+          cmake --build build --config Release --target run -j 4 
0 commit comments