# Copyright (C) 2019 Intel Corporation. All rights reserved. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception name: Mac # Controls when the action will run. Triggers the workflow on push or pull request # events but only for the main branch on: push: branches: [ main ] pull_request: branches: [ main ] jobs: build: runs-on: ${{ matrix.os }} strategy: matrix: os: [macos-latest] steps: - uses: actions/checkout@v2 - name: Build iwasm [default] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [classic interp] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_FAST_INTERP=0 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [multi module] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_MULTI_MODULE=1 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [lib-pthread] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_LIB_PTHREAD=1 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [aot only] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_AOT=1 -DWAMR_BUILD_INTERP=0 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [interp only] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_AOT=0 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [memory profiling] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_MEMORY_PROFILING=1 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [tail call] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_TAIL_CALL=1 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [custom name section] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_CUSTOM_NAME_SECTION=1 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [disable hardware boundary check] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_DISABLE_HW_BOUND_CHECK=1 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [ref types] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_REF_TYPES=1 make -j $(nproc) cd .. && rm -rf build - name: Build iwasm [128-bit SIMD] run: | cd product-mini/platforms/darwin mkdir build && cd build cmake .. -DWAMR_BUILD_SIMD=1 make -j $(nproc) cd .. && rm -rf build - name: download and install wabt run: | cd /opt sudo wget https://github.com/WebAssembly/wabt/releases/download/1.0.19/wabt-1.0.19-macos.tar.gz sudo tar -xzf wabt-1.0.19-macos.tar.gz sudo mv wabt-1.0.19 wabt - name: Build Sample [wasm-c-api] run: | cd samples/wasm-c-api mkdir build && cd build cmake .. make ./callback ./callback_chain ./global ./hello ./hostref ./memory ./reflect ./table ./trap