diff options
Diffstat (limited to '.github/workflows/default-ci.yaml')
-rw-r--r-- | .github/workflows/default-ci.yaml | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/.github/workflows/default-ci.yaml b/.github/workflows/default-ci.yaml new file mode 100644 index 0000000..0a7c944 --- /dev/null +++ b/.github/workflows/default-ci.yaml @@ -0,0 +1,38 @@ +name: CMake Build + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + build_type: [Release, Debug] + shared_library: [True, False] + exclude: + # Building a shared library is currently unsupported on Windows. + - os: windows-latest + shared_library: True + + steps: + - uses: actions/checkout@v2 + + - name: Configure CMake + # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required when using a single-configuration generator such as make. + # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DENTITYX_BUILD_SHARED=${{matrix.shared_library}} + + - name: Build + # Build the library with the given configuration + run: cmake --build ${{github.workspace}}/build --config ${{matrix.build_type}} + + - name: Test + working-directory: ${{github.workspace}}/build + # Execute tests defined by the CMake configuration. + # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail + run: ctest -C ${{matrix.build_type}} |