Tools and libraries to glue C/C++ APIs to high-level languages
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

53 lines
1.4 KiB

name: CI
on: [push, pull_request]
jobs:
build:
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
strategy:
fail-fast: false
matrix:
config:
- { os: ubuntu-20.04, platform: x64, cxx: g++-10, cc: gcc-10 }
- { os: macos-10.15, platform: x64, cxx: clang++, cc: clang }
- { os: windows-2019, platform: x86, vs: msvc }
- { os: windows-2019, platform: x64, vs: msvc }
runs-on: ${{ matrix.config.os }}
env:
CC: ${{ matrix.config.cc }}
CXX: ${{ matrix.config.cxx }}
PLATFORM: ${{ matrix.config.platform }}
steps:
- uses: actions/checkout@v2
- name: Environment
if: matrix.config.vs
shell: bash
run: echo "/c/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/MSBuild/Current/Bin" >> $GITHUB_PATH
- name: Fix intrin.h file
if: matrix.config.vs
shell: powershell
run: build/intrin.ps1
- name: Setup
shell: bash
run: |
build/build.sh generate -platform $PLATFORM
build/build.sh download_llvm -platform $PLATFORM
- name: Restore
shell: bash
run: build/build.sh restore -platform $PLATFORM
- name: Build
shell: bash
run: build/build.sh -platform $PLATFORM -build_only
- name: Test
shell: bash
run: build/test.sh -platform $PLATFORM