Fix append_ia5 function to not assume NUL terminated strings
[openssl.git] / .github / workflows / windows.yml
1 name: Windows GitHub CI
2
3 on: [pull_request, push]
4
5 jobs:
6   shared:
7     # Run a job for each of the specified target architectures:
8     strategy:
9       matrix:
10         os:
11           - windows-latest
12           - windows-2016
13         platform:
14           - arch: win64
15             config: VC-WIN64A enable-fips
16           - arch: win32
17             config: VC-WIN32 --strict-warnings no-fips
18     runs-on: ${{matrix.os}}
19     steps:
20     - uses: actions/checkout@v2
21     - uses: ilammy/msvc-dev-cmd@v1
22       with:
23         arch: ${{ matrix.platform.arch }}
24     - uses: ilammy/setup-nasm@v1
25       with:
26         platform: ${{ matrix.platform.arch }}
27     - name: prepare the build directory
28       run: mkdir _build
29     - name: config
30       working-directory: _build
31       run: |
32         perl ..\Configure --banner=Configured no-makedepend ${{ matrix.platform.config }}
33         perl configdata.pm --dump
34     - name: build
35       working-directory: _build
36       run: nmake /S
37     - name: test
38       working-directory: _build
39       run: nmake test VERBOSE_FAILURE=yes TESTS=-test_fuzz* HARNESS_JOBS=4
40     - name: install
41       # Run on 64 bit only as 32 bit is slow enough already
42       if: $${{ matrix.platform.arch == 'win64' }}
43       run: |
44         mkdir _dest
45         nmake install DESTDIR=_dest
46       working-directory: _build
47   plain:
48     strategy:
49       matrix:
50         os:
51           - windows-latest
52           - windows-2016
53     runs-on: ${{matrix.os}}
54     steps:
55     - uses: actions/checkout@v2
56     - uses: ilammy/msvc-dev-cmd@v1
57     - name: prepare the build directory
58       run: mkdir _build
59     - name: config
60       working-directory: _build
61       run: |
62         perl ..\Configure --banner=Configured no-makedepend no-shared no-fips VC-WIN64A-masm
63         perl configdata.pm --dump
64     - name: build
65       working-directory: _build
66       run: nmake /S
67     - name: test
68       working-directory: _build
69       run: nmake test VERBOSE_FAILURE=yes HARNESS_JOBS=4
70   minimal:
71     strategy:
72       matrix:
73         os:
74           - windows-latest
75           - windows-2016
76     runs-on: ${{matrix.os}}
77     steps:
78     - uses: actions/checkout@v2
79     - uses: ilammy/msvc-dev-cmd@v1
80     - name: prepare the build directory
81       run: mkdir _build
82     - name: config
83       working-directory: _build
84       run: |
85         perl ..\Configure --banner=Configured no-makedepend no-bulk no-deprecated no-fips no-asm -DOPENSSL_SMALL_FOOTPRINT VC-WIN64A
86         perl configdata.pm --dump
87     - name: build
88       working-directory: _build
89       run: nmake # verbose, so no /S here
90     - name: test
91       working-directory: _build
92       run: nmake test VERBOSE_FAILURE=yes TESTS=-test_fuzz* HARNESS_JOBS=4