name: Windows GitHub CI on: [pull_request, push] jobs: shared: runs-on: windows-latest # Run a job for each of the specified target architectures: strategy: matrix: arch: - win64 - win32 steps: - uses: actions/checkout@v2 - uses: ilammy/msvc-dev-cmd@v1 with: arch: ${{ matrix.arch }} - uses: ilammy/setup-nasm@v1 with: platform: ${{ matrix.arch }} - name: prepare the build directory run: mkdir _build - name: config working-directory: _build run: | if ( "${{ matrix.arch }}" -eq "win32" ) { $target = "VC-WIN32" ; $fips = "no-fips" } else { $target = "VC-WIN64A" ; $fips = "enable-fips" } perl ..\Configure --banner=Configured no-makedepend $fips $target 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* HARNESS_JOBS=4 - name: install # Run on 64 bit only as 32 bit is slow enough already if: $${{ matrix.arch == 'win64' }} run: | mkdir _dest nmake install DESTDIR=_dest working-directory: _build plain: runs-on: windows-latest 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 --banner=Configured no-makedepend no-shared no-fips 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 HARNESS_JOBS=4 minimal: runs-on: windows-latest 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 --banner=Configured no-makedepend no-bulk no-deprecated no-fips 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* HARNESS_JOBS=4