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.
|
||||
#
|
||||
|
||||
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_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)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue