mirror of
https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git
synced 2025-05-24 13:39:16 +00:00
Added Linux CI build
This commit is contained in:
parent
d47cf4367e
commit
0183545f02
3 changed files with 66 additions and 5 deletions
66
.github/workflows/linux.yaml
vendored
Normal file
66
.github/workflows/linux.yaml
vendored
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
name: Build code on Linux
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
pull_request:
|
||||||
|
types: [opened]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
linux:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
cxx: [g++-12, clang++-15]
|
||||||
|
build_type: [Debug, Release]
|
||||||
|
include:
|
||||||
|
- cxx: g++-12
|
||||||
|
install: sudo apt install g++-12
|
||||||
|
- cxx: clang++-15
|
||||||
|
cxxflags: -stdlib=libc++
|
||||||
|
install: sudo apt install clang-15 libc++-15-dev libc++abi-15-dev
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Create Build Environment
|
||||||
|
run: |
|
||||||
|
sudo apt update
|
||||||
|
${{matrix.install}}
|
||||||
|
cmake -E make_directory ${{runner.workspace}}/build
|
||||||
|
|
||||||
|
- name: Prepare Vulkan SDK
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
curl -LS -o vulkansdk.tar.xz https://sdk.lunarg.com/sdk/download/1.4.309.0/linux/vulkansdk-linux-x86_64-1.4.309.0.tar.xz
|
||||||
|
mkdir -p vulkan_sdk
|
||||||
|
tar xf vulkansdk.tar.xz -C vulkan_sdk
|
||||||
|
rm -rf vulkansdk.tar.xz
|
||||||
|
|
||||||
|
export VULKAN_SDK=$GITHUB_WORKSPACE/vulkan_sdk/1.4.309.0/x86_64
|
||||||
|
export PATH=$VULKAN_SDK/bin:$PATH
|
||||||
|
export LD_LIBRARY_PATH=$VULKAN_SDK/lib:$LD_LIBRARY_PATH
|
||||||
|
export VK_ICD_FILENAMES=$VULKAN_SDK/etc/vulkan/icd.d
|
||||||
|
export VK_LAYER_PATH=$VULKAN_SDK/etc/vulkan/layer.d
|
||||||
|
|
||||||
|
echo "VULKAN_SDK=$VULKAN_SDK" >> $GITHUB_ENV
|
||||||
|
echo "PATH=$VULKAN_SDK/bin:$PATH" >> $GITHUB_ENV
|
||||||
|
echo "LD_LIBRARY_PATH=$VULKAN_SDK/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
|
||||||
|
echo "VK_ICD_FILENAMES=$VULKAN_SDK/etc/vulkan/icd.d" >> $GITHUB_ENV
|
||||||
|
echo "VK_LAYER_PATH=$VULKAN_SDK/etc/vulkan/layer.d" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Configure
|
||||||
|
working-directory: ${{runner.workspace}}/build
|
||||||
|
env:
|
||||||
|
CXX: ${{matrix.cxx}}
|
||||||
|
CXXFLAGS: ${{matrix.cxxflags}}
|
||||||
|
run: |
|
||||||
|
cmake -DCMAKE_BUILD_TYPE=${{matrix.build_type}} \
|
||||||
|
-DVMA_BUILD_SAMPLES=YES \
|
||||||
|
$GITHUB_WORKSPACE
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
working-directory: ${{runner.workspace}}/build
|
||||||
|
run: |
|
||||||
|
threads=`nproc`
|
||||||
|
cmake --build . --config ${{matrix.build_type}} --parallel $threads
|
|
@ -20,11 +20,6 @@
|
||||||
# THE SOFTWARE.
|
# THE SOFTWARE.
|
||||||
#
|
#
|
||||||
|
|
||||||
if (NOT WIN32)
|
|
||||||
message(STATUS "VmaSample application is only supported on Windows")
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
option(VMA_STATIC_VULKAN_FUNCTIONS "Link statically with Vulkan API" ON)
|
option(VMA_STATIC_VULKAN_FUNCTIONS "Link statically with Vulkan API" ON)
|
||||||
option(VMA_DYNAMIC_VULKAN_FUNCTIONS "Fetch pointers to Vulkan functions internally (no static linking)" OFF)
|
option(VMA_DYNAMIC_VULKAN_FUNCTIONS "Fetch pointers to Vulkan functions internally (no static linking)" OFF)
|
||||||
option(VMA_DEBUG_ALWAYS_DEDICATED_MEMORY "Every allocation will have its own memory block" OFF)
|
option(VMA_DEBUG_ALWAYS_DEDICATED_MEMORY "Every allocation will have its own memory block" OFF)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue