Skip to content

WIP: CMake Build System Changes #1

WIP: CMake Build System Changes

WIP: CMake Build System Changes #1

Workflow file for this run

name: linux

Check failure on line 1 in .github/workflows/build.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/build.yml

Invalid workflow file

No steps defined in `steps` and no workflow called in `uses` for the following jobs: env, strategy
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
strategy:
matrix:
os: [ubuntu-22.04, windows-2022, macos-latest]
config: [Debug, Release]
env:
parallel: ${{ matrix.os == 'windows-2022' && "--parallel" || "-j`nproc`" }}
build:
name: Build ${{ matrix.os }} ${{ matrix.config }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: microsoft/setup-msbuild@v1.0.2
if: matrix.os == 'windows-2022'
## Install required libraries
- name: Install linux libraries
if: matrix.os == 'ubuntu-22.04'
run: sudo apt-get install -y libcapstone-dev libtbb-dev libglfw3-dev pkg-config
- name: Install windows libraries
if: matrix.os == 'windows-2022'
run: choco install capstone tbb glfw pkgconfiglite
- name: Install macos libraries
if: matrix.os == 'macos-latest'
run: brew install capstone tbb pkg-config glfw meson
## Configure
- name: Configure
run: |
cmake -B build -S . -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DTRACY_WITH_EXECUTABLES=ON
## Build
- name: Profiler GUI
run: cmake --build build --config ${{ matrix.config }} --target profiler ${{ env.parallel }}
- name: Update utility
run: cmake --build build --config ${{ matrix.config }} --target update ${{ env.parallel }}
- name: Capture utility
run: cmake --build build --config ${{ matrix.config }} --target capture ${{ env.parallel }}
- name: Csvexport utility
run: cmake --build build --config ${{ matrix.config }} --target csvexport ${{ env.parallel }}
- name: Import-chrome utility
run: cmake --build build --config ${{ matrix.config }} --target import-chrome ${{ env.parallel }}
- name: Import-fuchsia utility
run: cmake --build build --config ${{ matrix.config }} --target import-fuchsia ${{ env.parallel }}
- name: Library
run: cmake --build build --config ${{ matrix.config }} --target TracyClient ${{ env.parallel }}
- name: Library (meson)
run: |
meson setup -Dprefix=$PWD/install build
meson compile -C build
meson install -C build
- name: Package binaries
run: |
7z a Tracy-${{ matrix.os }}.7z build/bin
- uses: actions/upload-artifact@v2
with:
path: Tracy-${{ matrix.os }}.7z