Skip to content

Commit

Permalink
Update ci.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
cristianglezm authored Apr 10, 2024
1 parent 8ad18d6 commit 9f29a0b
Showing 1 changed file with 36 additions and 38 deletions.
74 changes: 36 additions & 38 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
name: ci

on: [push, pull_request]

concurrency:
Expand All @@ -13,26 +12,25 @@ jobs:
build:
name: ${{ matrix.platform.name }}-${{ matrix.config.name }}-${{ matrix.type.name }}
runs-on: ${{ matrix.platform.os }}

strategy:
fail-fast: false
matrix:
platform:
- { name: Windows VS2019 x86, os: windows-2019, flags: -GNinja }
- { name: Windows VS2019 x64, os: windows-2019, flags: -GNinja }
- { name: Windows VS2022 x86, os: windows-2022, flags: -GNinja }
- { name: Windows VS2022 x64, os: windows-2022, flags: -GNinja }
- { name: Windows LLVM/Clang, os: windows-2022, flags: -DCMAKE_CXX_COMPILER=clang++ -GNinja }
- { name: Windows MinGW, os: windows-2022, flags: -DCMAKE_CXX_COMPILER=g++ -GNinja }
- { name: Linux GCC, os: ubuntu-22.04, flags: -GNinja }
- { name: Linux Clang, os: ubuntu-22.04, flags: -DCMAKE_CXX_COMPILER=clang++ -GNinja }
- { name: Windows VS2019 x86, os: windows-2019, flags: -GNinja }
- { name: Windows VS2019 x64, os: windows-2019, flags: -GNinja }
- { name: Windows VS2022 x86, os: windows-2022, flags: -GNinja }
- { name: Windows VS2022 x64, os: windows-2022, flags: -GNinja }
- { name: Windows LLVM/Clang, os: windows-2022, flags: -DCMAKE_CXX_COMPILER=clang++ -GNinja }
- { name: Windows MinGW, os: windows-2022, flags: -DCMAKE_CXX_COMPILER=g++ -GNinja }
- { name: Linux GCC, os: ubuntu-22.04, flags: -GNinja }
- { name: Linux Clang, os: ubuntu-22.04, flags: -DCMAKE_CXX_COMPILER=clang++ -GNinja }
config:
- { name: Shared, flags: -DBUILD_SHARED_LIBS=TRUE }
- { name: Static, flags: -DBUILD_SHARED_LIBS=FALSE }
- { name: Shared, flags: -DBUILD_SHARED_LIBS=TRUE }
- { name: Static, flags: -DBUILD_SHARED_LIBS=FALSE }
type:
- { name: Release }
- { name: Debug, flags: -DCMAKE_BUILD_TYPE=Debug }

- { name: Release }
- { name: Debug, flags: -DCMAKE_BUILD_TYPE=Debug }
include:
- platform: { name: Windows VS2022 x64, os: windows-2022 }
config: { name: Static (MSVC), flags: -GNinja -DBUILD_SHARED_LIBS=FALSE }
Expand All @@ -55,30 +53,30 @@ jobs:
config: { name: arm64-v8a (API 33), flags: -GNinja -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a -DCMAKE_SYSTEM_NAME=Android -DCMAKE_SYSTEM_VERSION=33 -DCMAKE_ANDROID_NDK=$ANDROID_SDK_ROOT/ndk/26.1.10909125 -DBUILD_SHARED_LIBS=TRUE -DCMAKE_ANDROID_STL_TYPE=c++_shared, arch: arm64-v8a, api: 33 }
type: { name: Debug, flags: -DCMAKE_BUILD_TYPE=Debug }

steps:
- name: Checkout Code
uses: actions/checkout@v4
steps:
- name: Checkout Code
uses: actions/checkout@v4

- name: Set Visual Studio Architecture
if: contains(matrix.platform.name, 'Windows VS') && !contains(matrix.platform.name, 'MSBuild')
uses: ilammy/msvc-dev-cmd@v1
with:
arch: ${{ contains(matrix.platform.name, 'x86') && 'x86' || 'x64' }}
- name: Set VS Arch
if: contains(matrix.platform.name, 'Windows VS') && !contains(matrix.platform.name, 'MSBuild')
uses: ilammy/msvc-dev-cmd@v1
with:
arch: ${{ contains(matrix.platform.name, 'x86') && 'x86' || 'x64' }}

- name: Get CMake and Ninja
uses: lukka/get-cmake@latest
with:
cmakeVersion: ${{ runner.os == 'Windows' && '3.27' || '3.27' }}
ninjaVersion: latest
- name: Get CMake and Ninja
uses: lukka/get-cmake@latest
with:
cmakeVersion: ${{ runner.os == 'Windows' && '3.27' || '3.27' }}
ninjaVersion: latest

- name: Install Android Components
if: matrix.platform.name == 'Android'
run: |
echo "y" | ${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager --install "build-tools;33.0.2"
echo "y" | ${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager --install "ndk;26.1.10909125"
- name: Install Android Components
if: matrix.platform.name == 'Android'
run: |
echo "y" | ${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager --install "build-tools;33.0.2"
echo "y" | ${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager --install "ndk;26.1.10909125"
- name: build
run: |
mkdir build && cd build
cmake ${{ matrix.config.flags }} ..
cmake --build . --config ${{ matrix.type.name }}
- name: build
run: |
mkdir build && cd build
cmake ${{ matrix.config.flags }} ..
cmake --build . --config ${{ matrix.type.name }}

0 comments on commit 9f29a0b

Please sign in to comment.