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