[github-ci] Import windows.yml workflow from master
authorNicola Tuveri <nic.tuv@gmail.com>
Fri, 6 Aug 2021 14:55:31 +0000 (17:55 +0300)
committerNicola Tuveri <nic.tuv@gmail.com>
Wed, 18 Aug 2021 22:01:22 +0000 (01:01 +0300)
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/16252)

.github/workflows/windows.yml [new file with mode: 0644]

diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml
new file mode 100644 (file)
index 0000000..c11242a
--- /dev/null
@@ -0,0 +1,93 @@
+---
+name: Windows GitHub CI for 1.1.1
+
+on: [pull_request, push]
+
+jobs:
+  shared:
+    # Run a job for each of the specified target architectures:
+    strategy:
+      matrix:
+        os:
+        - windows-latest
+        - windows-2016
+        platform:
+        - arch: win64
+          config: VC-WIN64A
+        - arch: win32
+          config: VC-WIN32 --strict-warnings
+    runs-on: ${{matrix.os}}
+    steps:
+    - uses: actions/checkout@v2
+    - uses: ilammy/msvc-dev-cmd@v1
+      with:
+        arch: ${{ matrix.platform.arch }}
+    - uses: ilammy/setup-nasm@v1
+      with:
+        platform: ${{ matrix.platform.arch }}
+    - name: prepare the build directory
+      run: mkdir _build
+    - name: config
+      working-directory: _build
+      run: |
+        perl ..\Configure no-makedepend ${{ matrix.platform.config }}
+        perl configdata.pm --dump
+    - name: build
+      working-directory: _build
+      run: nmake /S
+    - name: test
+      working-directory: _build
+      run: nmake test VERBOSE_FAILURE=yes TESTS=-test_fuzz*
+    - name: install
+      # Run on 64 bit only as 32 bit is slow enough already
+      if: $${{ matrix.platform.arch == 'win64' }}
+      run: |
+        mkdir _dest
+        nmake install DESTDIR=_dest
+      working-directory: _build
+  plain:
+    strategy:
+      matrix:
+        os:
+        - windows-latest
+        - windows-2016
+    runs-on: ${{matrix.os}}
+    steps:
+    - uses: actions/checkout@v2
+    - uses: ilammy/msvc-dev-cmd@v1
+    - name: prepare the build directory
+      run: mkdir _build
+    - name: config
+      working-directory: _build
+      run: |
+        perl ..\Configure no-makedepend no-shared VC-WIN64A-masm
+        perl configdata.pm --dump
+    - name: build
+      working-directory: _build
+      run: nmake /S
+    - name: test
+      working-directory: _build
+      run: nmake test VERBOSE_FAILURE=yes
+  minimal:
+    strategy:
+      matrix:
+        os:
+        - windows-latest
+        - windows-2016
+    runs-on: ${{matrix.os}}
+    steps:
+    - uses: actions/checkout@v2
+    - uses: ilammy/msvc-dev-cmd@v1
+    - name: prepare the build directory
+      run: mkdir _build
+    - name: config
+      working-directory: _build
+      run: |
+        perl ..\Configure no-makedepend no-deprecated no-asm -DOPENSSL_SMALL_FOOTPRINT VC-WIN64A
+        perl configdata.pm --dump
+    - name: build
+      working-directory: _build
+      run: nmake # verbose, so no /S here
+    - name: test
+      working-directory: _build
+      run: nmake test VERBOSE_FAILURE=yes TESTS=-test_fuzz*