update engine and build scripts

This commit is contained in:
BlackMATov
2023-01-08 17:47:13 +07:00
parent 3a990cc1e4
commit 4c196b35ab
27 changed files with 505 additions and 345 deletions

36
.github/workflows/darwin.yml vendored Normal file
View File

@@ -0,0 +1,36 @@
name: darwin
on: [push, pull_request]
env:
E2D_WITHOUT_AUDIO: true
E2D_WITHOUT_GRAPHICS: true
jobs:
build:
runs-on: ${{matrix.config.os}}
strategy:
fail-fast: false
matrix:
config:
# https://github.com/actions/virtual-environments/tree/main/images/macos
- { os: "macos-10.15", xcode: "10.3", arch: "x64" }
- { os: "macos-12", xcode: "14.2", arch: "x64" }
name: "xcode-${{matrix.config.xcode}}"
steps:
- name: Setup
run: brew install cmake ninja
- name: Checkout
uses: actions/checkout@v3
with:
lfs: true
submodules: recursive
- name: Select Xcode
run: sudo xcode-select --switch "/Applications/Xcode_${{matrix.config.xcode}}.app"
- name: Build
run: |
cmake --preset macos-${{matrix.config.arch}}
cmake --build --preset macos-${{matrix.config.arch}}-release
- name: Test
run: |
ctest --preset macos-${{matrix.config.arch}}-release

36
.github/workflows/linux.yml vendored Normal file
View File

@@ -0,0 +1,36 @@
name: linux
on: [push, pull_request]
env:
E2D_WITHOUT_AUDIO: true
E2D_WITHOUT_GRAPHICS: true
jobs:
build:
runs-on: ${{matrix.config.os}}
strategy:
fail-fast: false
matrix:
config:
# https://github.com/actions/virtual-environments/tree/main/images/linux
- { os: "ubuntu-20.04", cc: "gcc-7", cxx: "g++-7" }
- { os: "ubuntu-20.04", cc: "clang-7", cxx: "clang++-7" }
- { os: "ubuntu-22.04", cc: "gcc-12", cxx: "g++-12" }
- { os: "ubuntu-22.04", cc: "clang-14", cxx: "clang++-14" }
name: "${{matrix.config.cxx}}"
steps:
- name: Setup
run: sudo apt-get -y install cmake ninja-build libx11-dev libgl1-mesa-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev ${{matrix.config.cc}} ${{matrix.config.cxx}}
- name: Checkout
uses: actions/checkout@v3
with:
lfs: true
submodules: recursive
- name: Build
run: |
cmake --preset linux-${{matrix.config.cc}}
cmake --build --preset linux-${{matrix.config.cc}}-release
- name: Test
run: |
ctest --preset linux-${{matrix.config.cc}}-release

38
.github/workflows/windows.yml vendored Normal file
View File

@@ -0,0 +1,38 @@
name: windows
on: [push, pull_request]
env:
E2D_WITHOUT_AUDIO: true
E2D_WITHOUT_GRAPHICS: true
jobs:
build:
runs-on: ${{matrix.config.os}}
strategy:
fail-fast: false
matrix:
config:
# https://github.com/actions/virtual-environments/tree/main/images/win
- { os: "windows-2019", vc: "msvc2019", arch: "x86" }
- { os: "windows-2019", vc: "msvc2019", arch: "x64" }
- { os: "windows-2022", vc: "msvc2022", arch: "x86" }
- { os: "windows-2022", vc: "msvc2022", arch: "x64" }
name: "${{matrix.config.vc}} ${{matrix.config.arch}}"
steps:
- name: Setup
run: choco install cmake ninja
- name: Checkout
uses: actions/checkout@v3
with:
lfs: true
submodules: recursive
- name: Select MSVC
uses: ilammy/msvc-dev-cmd@v1
- name: Build
run: |
cmake --preset windows-${{matrix.config.arch}}-${{matrix.config.vc}}
cmake --build --preset windows-${{matrix.config.arch}}-${{matrix.config.vc}}-release
- name: Test
run: |
ctest --preset windows-${{matrix.config.arch}}-${{matrix.config.vc}}-release