cmake-action/.github/workflows/test.yml

83 lines
2.1 KiB
YAML

name: test
on:
workflow_dispatch:
push:
jobs:
use-action:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v3.3.0
- name: Move test project to the working directory
run: mv test/* .
- name: Use this action
uses: ./
- name: Run build result
run: ${{ matrix.os == 'windows-latest' && 'build\Debug\hello_world.exe' || 'build/hello_world' }}
use-action-with-specified-dir:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3.3.0
- name: Use this action with specified directory
uses: ./
with:
source-dir: test
build-dir: test/build
- name: Run build result
run: test/build/hello_world
- name: Check if the default build directory does not exist
run: test ! -d build
use-action-with-specified-compiler:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v3.3.0
- name: Use this action with specified compiler
uses: ./
with:
source-dir: test
c-compiler: clang
cxx-compiler: clang++
args: |
-D BUILD_C=ON
-D BUILD_CXX=ON
- name: Run build result
run: |
{{ matrix.os == 'windows-latest' && 'build\Debug\hello_world.exe' || 'build/hello_world' }}
{{ matrix.os == 'windows-latest' && 'build\Debug\hello_world_c.exe' || 'build/hello_world_c' }}
use-action-with-specified-generator:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v3.3.0
- name: Use this action with specified generator
uses: ./
with:
source-dir: test
generator: Ninja
- name: Run build result
run: build/hello_world