Skip to content

CMake variables need to be declared as CACHE for them to be changeabl… #178

CMake variables need to be declared as CACHE for them to be changeabl…

CMake variables need to be declared as CACHE for them to be changeabl… #178

Workflow file for this run

name: Build Opacity Micro-Map SDK
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
Build-Windows:
runs-on: windows-latest
steps:
-
name : Checkout
uses: actions/checkout@v3
with:
submodules: true
-
name: Install dependencies
uses: crazy-max/ghaction-chocolatey@v2
with:
args: install windows-sdk-10.0 cmake -y
-
name: Install Vulkan
run: |
$ver = (Invoke-WebRequest -Uri "https://vulkan.lunarg.com/sdk/latest.json" | ConvertFrom-Json).windows
echo Vulkan SDK version $ver
$ProgressPreference = 'SilentlyContinue'
Invoke-WebRequest -Uri "https://sdk.lunarg.com/sdk/download/$ver/windows/VulkanSDK-$ver-Installer.exe" -OutFile VulkanSDK.exe
echo Downloaded
.\VulkanSDK.exe --root C:\VulkanSDK --accept-licenses --default-answer --confirm-command install
-
name: Generate CMake
run: |
$Env:VULKAN_SDK = "C:/VulkanSDK/"
$Env:Path += ";C:/VulkanSDK/Bin"
mkdir "build"
cd "build"
cmake .. -A x64
cd ..
-
name: Build Debug
run: |
cd "build"
cmake --build . --config Debug
cd ..
-
name: Build Release
run: |
cd "build"
cmake --build . --config Release
cd ..
-
name: Run Tests
run: |
cd "build/bin/Release"
./tests.exe --gtest_filter=-*GPU*
cd ../../..
-
name: Install Release
run: |
cd "build"
cmake --install . --config Release
cd ..
-
name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: Opacity Micro-Map SDK Windows
path: build/install
Build-Ubuntu:
runs-on: ubuntu-22.04
steps:
-
name : Checkout
uses: actions/checkout@v3
with:
submodules: true
-
name: Setup CMake
uses: jwlawson/[email protected]
with:
cmake-version: '3.16.x'
-
name: Setup Ninja
uses: seanmiddleditch/gha-setup-ninja@master
-
name: Install Vulkan SDK
run: |
sudo apt install -y wget
wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo tee /etc/apt/trusted.gpg.d/lunarg.asc
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-jammy.list http://packages.lunarg.com/vulkan/lunarg-vulkan-jammy.list
sudo apt update
sudo apt install -y vulkan-sdk
-
name: CMake Generate
run: |
mkdir "build"
cd "build"
cmake -G Ninja ..
cd ..
-
name: Build Debug
run: |
cd "build"
cmake --build . --config Debug
cd ..
-
name: Build Release
run: |
cd "build"
cmake --build . --config Release
cd ..
-
name: Test Release
run: |
cd "build"
cd "bin"
./tests
-
name: Install Release
run: |
cd "build"
cmake --install . --config Release
cd ..
-
name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: Opacity Micro-Map SDK Linux
path: build/install