1+ ---
12name : windows-openssl
2-
3-
4- on : [push]
5-
3+ on :
4+ - push
65jobs :
76 Build-Libs-OpenSSL-Win :
8- name : ' Build-OpenSSL-Lib-Windows'
7+ name : Build-OpenSSL-Lib-Windows
98 runs-on : windows-latest
10- if : |
9+ if : |+
1110 contains(github.event.head_commit.message, '[all]') ||
1211 contains(github.event.head_commit.message, '[windows]') ||
1312 contains(github.event.head_commit.message, '[windows-openssl]') ||
@@ -18,16 +17,18 @@ jobs:
1817 arch :
1918 - amd64
2019 - amd64_x86
20+ shared :
21+ - shared
22+ - no-shared
2123
2224 steps :
23- - name : ' Get openssl'
25+ - name : Get openssl
2426 uses : actions/checkout@v3
2527 with :
2628 repository : openssl/openssl
27- ref : openssl-3.0.13
29+ ref : openssl-3.0.16
2830 path : openssl
29-
30- - name : Setup msbuild environment
31+ - name : Setup msbuild environment
3132 uses : ilammy/msvc-dev-cmd@v1
3233 with :
3334 arch : ${{ matrix.arch }}
3839 with :
3940 distribution : strawberry
4041 - name : Build OpenSSL x86
41- if : matrix.arch == 'amd64_x86'
42+ if : matrix.arch == 'amd64_x86' && matrix.shared == 'no-shared'
4243 run : |
4344 cd openssl
4445
4849 mkdir build/win32
4950 move libcrypto.lib build/win32
5051 move libssl.lib build/win32
52+ - name : Build Shared OpenSSL x86
53+ if : matrix.arch == 'amd64_x86' && matrix.shared == 'shared'
54+ run : |
55+ cd openssl
56+
57+ perl Configure no-tests VC-WIN32
58+ nmake
59+ mkdir build
60+ mkdir build/win32
61+ move libcrypto-3.dll build/win32
62+ move libssl-3.dll build/win32
5163 - name : Build OpenSSL x64
52- if : matrix.arch == 'amd64'
64+ if : matrix.arch == 'amd64' && matrix.shared == 'no-shared'
5365 run : |
5466 cd openssl
5567
@@ -60,41 +72,45 @@ jobs:
6072 move libcrypto.lib build/win64
6173 move libssl.lib build/win64
6274 move include build/include
63-
75+ - name : Build Shared OpenSSL x64
76+ if : matrix.arch == 'amd64' && matrix.shared == 'shared'
77+ run : |
78+ cd openssl
79+
80+ perl Configure no-tests VC-WIN64A
81+ nmake
82+ mkdir build
83+ mkdir build/win64
84+ move libcrypto-3-x64.dll build/win64
85+ move libssl-3-x64.dll build/win64
6486 - name : Archive Windows OpenSSL libs
65- uses : actions/upload-artifact@v3
87+ uses : actions/upload-artifact@v4
6688 with :
6789 retention-days : 1
68- name : windows-openssl
69- path : openssl/build
70-
71-
90+ name : windows-openssl-${{ matrix.arch }}-${{ matrix.shared }}
91+ path : openssl/build
92+
7293 github-release :
7394 name : GitHub Release
7495 needs : Build-Libs-OpenSSL-Win
7596 runs-on : ubuntu-latest
7697 if : startsWith(github.ref, 'refs/tags/')
77-
7898 steps :
7999 - name : Setup | Checkout
80100 uses : actions/checkout@v2
81-
82101 - name : Setup | Artifacts
83- uses : actions/download-artifact@v2
84-
102+ uses : actions/download-artifact@v4
85103 - name : Setup | Checksums
86- run : for file in $(find ./ -name '*.lib' -or -name '*.dll' ); do openssl dgst -sha256 -r "$file" | awk '{print $1}' > "${file}.sha256"; done
87-
104+ run : for file in $(find ./ -name '*.lib' -or -name '*.dll' ); do openssl dgst
105+ -sha256 -r "$file" | awk '{print $1}' > "${file}.sha256"; done
88106 - name : Zip ALL
89107 run : for file in *; do zip -r ${file%.*}.zip $file; done
90-
91108 - name : Upload binaries to release
92109 uses : svenstaro/upload-release-action@v2
93110 with :
94111 repo_token : ${{ secrets.GITHUB_TOKEN }}
95- file : windows-openssl .zip
112+ file : " * .zip"
96113 tag : ${{ github.ref }}
97114 overwrite : true
98- file_glob : true
99-
115+ file_glob : true
100116
0 commit comments