Torque3D/.github/workflows/build-linux-gcc.yml
marauder2k7 872c765ca0 clean
Removed intel runner from mac, it never run
Removed arm from windows as it will always fail as git ci runners are not arm
removed gcc12 kept gcc13
Added convenience function for checking if a package is active
2026-06-16 22:01:19 +01:00

114 lines
No EOL
3.9 KiB
YAML

name: Linux Build
on:
push:
branches: [development]
pull_request:
branches: [development]
concurrency:
group: ci-${{github.actor}}-${{github.head_ref || github.run_number}}-${{github.ref}}-linux
cancel-in-progress: true
permissions:
checks: write
jobs:
build-linux:
if: github.repository == 'TorqueGameEngines/Torque3D'
name: ${{matrix.config.name}}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
config:
- {
name: "Ubuntu GCC 13",
build_type: "Release",
cc: "gcc-13",
cxx: "g++-13",
generator: "Ninja",
}
- {
name: "Ubuntu GCC Latest",
build_type: "Release",
cc: "gcc",
cxx: "g++",
generator: "Ninja",
}
steps:
- uses: actions/checkout@v4
- name: Print env
run: |
echo github.event.action: ${{ github.event.action }}
echo github.event_name: ${{ github.event_name }}
- name: Run GIT Init
run: git init
- name: Setup GCC problem matcher
uses: ammaraskar/gcc-problem-matcher@master
- name: Install Linux Dependencies
run: |
sudo apt-get update && \
sudo apt-get install -y \
ninja-build \
build-essential \
nasm \
python3 \
python3-pip \
gcc-12 g++-12 \
gcc-13 g++-13 \
clang \
libogg-dev \
libxft-dev \
libx11-dev \
libxxf86vm-dev \
libopenal-dev \
libasound2-dev \
libpipewire-0.3-dev \
portaudio19-dev \
oss4-dev \
libjack-dev \
libpulse-dev \
libdbus-1-dev \
libfreetype6-dev \
libxcursor-dev \
libxinerama-dev \
libxi-dev \
libxrandr-dev \
libxss-dev \
libglu1-mesa-dev \
libgtk-3-dev
ninja --version
cmake --version
${{matrix.config.cc}} --version
python3 -m pip install --break-system-packages jinja2
- name: Configure, Build & Install
uses: threeal/cmake-action@v1.3.0
with:
source-dir: ${{github.workspace}}
build-dir: ${{github.workspace}}/build
c-compiler: ${{matrix.config.cc}}
cxx-compiler: ${{matrix.config.cxx}}
generator: ${{matrix.config.generator}}
options: CMAKE_BUILD_TYPE=${{matrix.config.build_type}} TORQUE_APP_NAME=Torque3D TORQUE_TESTING=ON
run-build: true
build-args: --config ${{matrix.config.build_type}} --target install
- name: Unit Tests
run: |
cd "${{github.workspace}}/My Projects/Torque3D/game"
./Torque3D runTests.tscript
- name: Test Reporter
uses: phoenix-actions/test-reporting@v14
with:
name: ${{matrix.config.name}} test results
path: "**/My Projects/Torque3D/game/test_detail.xml"
reporter: java-junit
fail-on-error: true
if: github.event_name != 'pull_request'