# Copyright (C) 2019 Intel Corporation. All rights reserved. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception name: compilation on windows-latest on: # will be triggered on PR events pull_request: paths-ignore: - "assembly-script/**" - "ci/**" - "doc/**" - "test-tools/**" - ".github/workflows/compilation_on_windows.yml" # will be triggered on push events push: paths-ignore: - "assembly-script/**" - "ci/**" - "doc/**" - "test-tools/**" - ".github/workflows/compilation_on_windows.yml" # allow to be triggered manually workflow_dispatch: # Cancel any in-flight jobs for the same PR/branch so there's only one active # at a time concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: # Cancel any in-flight jobs for the same PR/branch so there's only one active # at a time cancel_previous: runs-on: windows-latest steps: - name: Cancel Workflow Action uses: styfle/cancel-workflow-action@0.9.1 with: access_token: ${{ github.token }} build: needs: cancel_previous runs-on: windows-latest steps: - uses: actions/checkout@v3 - name: clone uvwasi library run: | cd core/deps git clone https://github.com/nodejs/uvwasi.git - name: Build iwasm [default] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. cmake --build . --config Release --parallel 4 cd .. && rm -force -r build - name: Build iwasm [aot only] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. -DWAMR_BUILD_AOT=1 -DWAMR_BUILD_INTERP=0 cmake --build . --config Release --parallel 4 cd .. && rm -force -r build - name: Build iwasm [interp only] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. -DWAMR_BUILD_AOT=0 cmake --build . --config Release --parallel 4 cd .. && rm -force -r build - name: Build iwasm [tail call] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. -DWAMR_BUILD_TAIL_CALL=1 cmake --build . --config Release --parallel 4 cd .. && rm -force -r build - name: Build iwasm [custom name section] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. -DWAMR_BUILD_CUSTOM_NAME_SECTION=1 cmake --build . --config Release --parallel 4 cd .. && rm -force -r build - name: Build iwasm [disable hardware boundary check] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. -DWAMR_DISABLE_HW_BOUND_CHECK=1 cmake --build . --config Release --parallel 4 cd .. && rm -force -r build - name: Build iwasm [reference types] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. -DWAMR_BUILD_REF_TYPES=1 cmake --build . --config Release --parallel 4 cd .. && rm -force -r build - name: Build iwasm [128-bit SIMD] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. -DWAMR_BUILD_SIMD=1 cmake --build . --config Release --parallel 4 cd .. && rm -force -r build - name: Build iwasm [source debugger] run: | cd product-mini/platforms/windows mkdir build && cd build cmake .. -DWAMR_BUILD_DEBUG_INTERP=1 cmake --build . --config Release --parallel 4 cd .. && rm -force -r build