Merge pull request #665 from GTD-Carthage/content-unstable #862
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CMake | |
on: | |
push: | |
branches: [ v21 ] | |
pull_request: | |
branches: [ v21 ] | |
env: | |
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) | |
BUILD_TYPE: Release | |
# The number of days to retain artifacts | |
RETENTION_DAYS: 30 | |
jobs: | |
build-win32: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download w64devkit | |
run: invoke-webrequest https://github.com/skeeto/w64devkit/releases/download/v1.23.0/w64devkit-i686-1.23.0.zip -outfile ${{github.workspace}}\w64devkit.zip | |
- name: Extract w64devkit | |
run: expand-archive -path ${{github.workspace}}\w64devkit.zip -destinationpath ${{github.workspace}} | |
- name: Set environment variables and build | |
run: | | |
$env:Path = "${{github.workspace}}\w64devkit\bin;" + $env:Path | |
cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_CXX_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -DCMAKE_C_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -G "MinGW Makefiles" | |
cmake --build build --config ${{env.BUILD_TYPE}} | |
strip ${{github.workspace}}\obsidian.exe | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: obsidian-win32 | |
path: | | |
addons | |
data | |
engines | |
games | |
language | |
modules | |
ports | |
presets | |
scripts | |
theme | |
tools | |
obsidian.exe | |
retention-days: ${{env.RETENTION_DAYS}} | |
build-win64: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download w64devkit | |
run: invoke-webrequest https://github.com/skeeto/w64devkit/releases/download/v1.23.0/w64devkit-1.23.0.zip -outfile ${{github.workspace}}\w64devkit.zip | |
- name: Extract w64devkit | |
run: expand-archive -path ${{github.workspace}}\w64devkit.zip -destinationpath ${{github.workspace}} | |
- name: Set environment variables and build | |
run: | | |
$env:Path = "${{github.workspace}}\w64devkit\bin;" + $env:Path | |
cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_CXX_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -DCMAKE_C_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -G "MinGW Makefiles" | |
cmake --build build --config ${{env.BUILD_TYPE}} | |
strip ${{github.workspace}}\obsidian.exe | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: obsidian-win64 | |
path: | | |
addons | |
data | |
engines | |
games | |
language | |
modules | |
ports | |
presets | |
scripts | |
theme | |
tools | |
obsidian.exe | |
retention-days: ${{env.RETENTION_DAYS}} | |
build-linux: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y libxft-dev libfontconfig1-dev libgl-dev | |
- name: Configure CMake Ubuntu | |
run: mkdir build && cd build && cmake .. -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} | |
- name: Build Ubuntu | |
run: cmake --build build --config ${{env.BUILD_TYPE}} | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: obsidian-ubuntu | |
path: | | |
addons | |
data | |
engines | |
games | |
language | |
modules | |
ports | |
presets | |
scripts | |
theme | |
tools | |
obsidian | |
retention-days: ${{env.RETENTION_DAYS}} | |
build-macos: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Configure CMake MacOS | |
run: mkdir build && cd build && cmake .. -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} | |
- name: Build MacOS | |
run: cmake --build build --config ${{env.BUILD_TYPE}} | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: obsidian-macos | |
path: | | |
addons | |
data | |
engines | |
games | |
language | |
modules | |
ports | |
presets | |
scripts | |
theme | |
tools | |
obsidian | |
retention-days: ${{env.RETENTION_DAYS}} |