-
Notifications
You must be signed in to change notification settings - Fork 8
177 lines (119 loc) · 4.56 KB
/
build.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
name: ClamAV Build Test
on:
pull_request:
branches:
- master
jobs:
build-windows-x64:
runs-on: windows-2019
steps:
- name: Remove link.exe to avoid conflict with Visual Studio linker
run: rm /usr/bin/link.exe
shell: bash
- uses: actions/checkout@v4
- name: Install Choco Things
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install nasm
- name: Install Python Things
run: python3 -m pip install pytest mussels
- name: Install Rust for cross-compiling to arm64
run: rustup target add aarch64-pc-windows-msvc
- uses: lukka/[email protected]
- name: Build for x64
run: msl build -r clamav -t x64
# TODO: add test step that clones clamav, sets environment variables, and runs tests
build-windows-x86:
runs-on: windows-2019
steps:
- name: Remove link.exe to avoid conflict with Visual Studio linker
run: rm /usr/bin/link.exe
shell: bash
- uses: actions/checkout@v4
- name: Install Choco Things
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install nasm
- name: Install Python Things
run: python3 -m pip install pytest mussels
- name: Install Rust for cross-compiling to arm64
run: rustup target add aarch64-pc-windows-msvc
- uses: lukka/[email protected]
- name: Build for x86
run: msl build -r clamav -t x86
# TODO: add test step that clones clamav, sets environment variables, and runs tests
build-windows-arm64:
runs-on: windows-2019
steps:
- name: Remove link.exe to avoid conflict with Visual Studio linker
run: rm /usr/bin/link.exe
shell: bash
- uses: actions/checkout@v4
- name: Install Choco Things
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install nasm
- name: Install Python Things
run: python3 -m pip install pytest mussels
- name: Install Rust for cross-compiling to arm64
run: rustup target add aarch64-pc-windows-msvc
- uses: lukka/[email protected]
- name: Build for arm64
run: msl build -r clamav -t arm64
# TODO: add test step that clones clamav, sets environment variables, and runs tests
build-macos-dynamic:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Install Brew Things
run: brew install bison flex
- name: Install Python Things
run: python3 -m pip install mussels pytest setuptools --break-system-packages
- uses: lukka/[email protected]
- name: Build for using dynamic libraries for host platform
shell: bash
run: msl build -r clamav -t host
# TODO: add test step that clones clamav, sets environment variables, and runs tests
build-macos-static:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Install Brew Things
run: brew install bison flex
- name: Install Python Things
run: python3 -m pip install mussels pytest setuptools --break-system-packages
- uses: lukka/[email protected]
- name: Build for using static libraries for host platform
shell: bash
run: msl build -r clamav -t host-static
# TODO: add test step that clones clamav, sets environment variables, and runs tests
build-ubuntu-dynamic:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Update package listings
run: sudo apt-get update
- name: Install Apt-get Things
run: sudo apt-get install -y bison flex valgrind pipx
- name: Install Python Things
run: pipx install pytest mussels
- uses: lukka/[email protected]
- name: Build for using dynamic libraries for host platform
shell: bash
run: msl build -r clamav -t host
# TODO: add test step that clones clamav, sets environment variables, and runs tests
build-ubuntu-static:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Update package listings
run: sudo apt-get update
- name: Install Apt-get Things
run: sudo apt-get install -y bison flex valgrind pipx
- name: Install Python Things
run: pipx install pytest mussels
- uses: lukka/[email protected]
- name: Build for using static libraries for host platform
shell: bash
run: msl build -r clamav -t host-static
# TODO: add test step that clones clamav, sets environment variables, and runs tests