20
20
strategy :
21
21
fail-fast : false
22
22
matrix :
23
- os : [ ubuntu-latest, macos-14-xlarge ]
23
+ os : [ ubuntu-latest, macos-14-xlarge, windows-latest ]
24
24
steps :
25
25
- uses : actions/checkout@v3
26
26
with :
29
29
submodules : false
30
30
- name : Remove aws-lc submodule from crate directory
31
31
working-directory : ./aws-lc-rs/aws-lc-sys
32
+ shell : bash
32
33
run : |
33
34
rm -rf aws-lc
34
35
- uses : actions/checkout@v3
44
45
- name : Install current Bash on macOS
45
46
if : runner.os == 'macOS'
46
47
run : brew install bash coreutils
48
+ - uses : ilammy/setup-nasm@v1
49
+ if : runner.os == 'Windows'
47
50
- name : No-prefix build for ${{ matrix.os }}
48
51
env :
49
52
AWS_LC_SYS_NO_PREFIX : " 1"
@@ -54,19 +57,27 @@ jobs:
54
57
cargo test -p aws-lc-sys --features bindgen
55
58
- name : Delete current symbol files and headers
56
59
working-directory : ./aws-lc-rs
60
+ shell : bash
57
61
run : |
58
62
rm -rf ./aws-lc-sys/symbols/* ./aws-lc-sys/generated-include/*
59
63
mkdir -p ./aws-lc-sys/symbols ./aws-lc-sys/generated-include/openssl
60
64
- name : Collect symbols
61
65
working-directory : ./aws-lc-rs
66
+ shell : bash
62
67
run : |
63
68
./scripts/build/collect_symbols.sh -c aws-lc-sys
64
69
- name : Generate Prefix Headers
65
70
working-directory : ./aws-lc-rs
71
+ shell : bash
66
72
run : ./scripts/generate/_generate_prefix_headers.sh -c aws-lc-sys
67
73
- name : Update sys-crate metadata
68
74
working-directory : ./aws-lc-rs
75
+ shell : bash
69
76
run : ./scripts/ci/update_sys_crate_metadata.sh aws-lc-sys
77
+ - name : Clean
78
+ working-directory : ./aws-lc-rs
79
+ run : |
80
+ cargo clean
70
81
- name : Generate bindings for ${{ matrix.os }}
71
82
env :
72
83
AWS_LC_SYS_PREGENERATING_BINDINGS : " 1"
75
86
cargo test -p aws-lc-sys --features bindgen
76
87
- name : Collect source from ${{ matrix.os }}
77
88
working-directory : ./aws-lc-rs
78
- run : ./scripts/build/collect_build_src.sh
79
- windows-aws-lc-rs-bindgen :
80
- if : github.repository_owner == 'aws'
81
- runs-on : ${{ matrix.os }}
82
- name : aws-lc-rs bindgen on ${{ matrix.os }}
83
- strategy :
84
- fail-fast : false
85
- matrix :
86
- os : [ windows-latest ]
87
- target : [ x86_64-pc-windows-msvc ]
88
- steps :
89
- - uses : actions/checkout@v3
90
- with :
91
- repository : aws/aws-lc-rs
92
- path : ./aws-lc-rs
93
- submodules : false
94
- - name : Remove aws-lc submodule from crate directory
95
- working-directory : ./aws-lc-rs/aws-lc-sys
96
89
shell : bash
97
- run : |
98
- rm -rf aws-lc
99
- - uses : actions/checkout@v3
100
- with :
101
- path : ./aws-lc-rs/aws-lc-sys/aws-lc
102
- - uses : dtolnay/rust-toolchain@master
103
- with :
104
- toolchain : ${{ env.RUST_SCRIPT_NIGHTLY_TOOLCHAIN }}
105
- - uses : dtolnay/rust-toolchain@stable
106
- - uses : actions/setup-go@v4
107
- with :
108
- go-version : ' >=1.20'
109
- - uses : ilammy/setup-nasm@v1
110
- - name : No-prefix build for ${{ matrix.target }}
111
- env :
112
- AWS_LC_SYS_NO_PREFIX : " 1"
113
- working-directory : ./aws-lc-rs
114
- run : |
115
- cargo test -p aws-lc-sys --features bindgen --target ${{ matrix.target }}
116
- - name : Collect symbols
117
- working-directory : ./aws-lc-rs
118
- shell : bash
119
- run : |
120
- ./scripts/build/collect_symbols.sh -c aws-lc-sys -t ${{ matrix.target }}
121
- - name : Generate Prefix Headers
122
- working-directory : ./aws-lc-rs
123
- shell : bash
124
- run : ./scripts/generate/_generate_prefix_headers.sh -c aws-lc-sys
125
- - name : Update sys-crate metadata
126
- working-directory : ./aws-lc-rs
127
- shell : bash
128
- run : ./scripts/ci/update_sys_crate_metadata.sh aws-lc-sys
129
- - name : Generate bindings for ${{ matrix.target }}
130
- env :
131
- AWS_LC_SYS_PREGENERATING_BINDINGS : " 1"
132
- working-directory : ./aws-lc-rs
133
- run : |
134
- cargo test -p aws-lc-sys --features bindgen --target ${{ matrix.target }}
90
+ run : ./scripts/build/collect_build_src.sh
0 commit comments