Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
VkCV Framework
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Terraform modules
Monitor
Service Desk
Analyze
Contributor analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Vulkan2021
VkCV Framework
Merge requests
!76
Resolve "Memory-Allocator"
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Resolve "Memory-Allocator"
59-memory-allocator
into
develop
Overview
0
Commits
9
Pipelines
10
Changes
30
Merged
Tobias Frisch
requested to merge
59-memory-allocator
into
develop
3 years ago
Overview
0
Commits
9
Pipelines
10
Changes
30
Expand
Closes
#59 (closed)
Edited
3 years ago
by
Tobias Frisch
0
0
Merge request reports
Compare
develop
version 8
d5ee54bd
3 years ago
version 7
c46d64a5
3 years ago
version 6
86f4580e
3 years ago
version 5
d3953902
3 years ago
version 4
715779ee
3 years ago
version 3
c6aac2f7
3 years ago
version 2
704bca47
3 years ago
version 1
569f52fd
3 years ago
develop (base)
and
latest version
latest version
b23fa8e4
9 commits,
3 years ago
version 8
d5ee54bd
8 commits,
3 years ago
version 7
c46d64a5
7 commits,
3 years ago
version 6
86f4580e
6 commits,
3 years ago
version 5
d3953902
5 commits,
3 years ago
version 4
715779ee
4 commits,
3 years ago
version 3
c6aac2f7
3 commits,
3 years ago
version 2
704bca47
2 commits,
3 years ago
version 1
569f52fd
1 commit,
3 years ago
30 files
+
300
−
215
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
30
Search (e.g. *.vue) (Ctrl+P)
config/lib/vma/CMakeLists.txt
0 → 100644
+
59
−
0
Options
cmake_minimum_required
(
VERSION 3.9
)
project
(
VulkanMemoryAllocator
)
find_package
(
Vulkan REQUIRED
)
option
(
VMA_HPP_PATH
"Location of C++ headers"
""
)
message
(
STATUS
"VMA_BUILD_SAMPLE =
${
VMA_BUILD_SAMPLE
}
"
)
message
(
STATUS
"VMA_BUILD_SAMPLE_SHADERS =
${
VMA_BUILD_SAMPLE_SHADERS
}
"
)
message
(
STATUS
"VMA_BUILD_REPLAY =
${
VMA_BUILD_REPLAY
}
"
)
option
(
VMA_RECORDING_ENABLED
"Enable VMA memory recording for debugging"
OFF
)
option
(
VMA_USE_STL_CONTAINERS
"Use C++ STL containers instead of VMA's containers"
OFF
)
option
(
VMA_STATIC_VULKAN_FUNCTIONS
"Link statically with Vulkan API"
OFF
)
option
(
VMA_DYNAMIC_VULKAN_FUNCTIONS
"Fetch pointers to Vulkan functions internally (no static linking)"
ON
)
option
(
VMA_DEBUG_ALWAYS_DEDICATED_MEMORY
"Every allocation will have its own memory block"
OFF
)
option
(
VMA_DEBUG_INITIALIZE_ALLOCATIONS
"Automatically fill new allocations and destroyed allocations with some bit pattern"
OFF
)
option
(
VMA_DEBUG_GLOBAL_MUTEX
"Enable single mutex protecting all entry calls to the library"
OFF
)
option
(
VMA_DEBUG_DONT_EXCEED_MAX_MEMORY_ALLOCATION_COUNT
"Never exceed VkPhysicalDeviceLimits::maxMemoryAllocationCount and return error"
OFF
)
message
(
STATUS
"VMA_RECORDING_ENABLED =
${
VMA_RECORDING_ENABLED
}
"
)
message
(
STATUS
"VMA_USE_STL_CONTAINERS =
${
VMA_USE_STL_CONTAINERS
}
"
)
message
(
STATUS
"VMA_DYNAMIC_VULKAN_FUNCTIONS =
${
VMA_DYNAMIC_VULKAN_FUNCTIONS
}
"
)
message
(
STATUS
"VMA_DEBUG_ALWAYS_DEDICATED_MEMORY =
${
VMA_DEBUG_ALWAYS_DEDICATED_MEMORY
}
"
)
message
(
STATUS
"VMA_DEBUG_INITIALIZE_ALLOCATIONS =
${
VMA_DEBUG_INITIALIZE_ALLOCATIONS
}
"
)
message
(
STATUS
"VMA_DEBUG_GLOBAL_MUTEX =
${
VMA_DEBUG_GLOBAL_MUTEX
}
"
)
message
(
STATUS
"VMA_DEBUG_DONT_EXCEED_MAX_MEMORY_ALLOCATION_COUNT =
${
VMA_DEBUG_DONT_EXCEED_MAX_MEMORY_ALLOCATION_COUNT
}
"
)
add_library
(
VulkanMemoryAllocator vma.cpp
)
set_target_properties
(
VulkanMemoryAllocator PROPERTIES
CXX_EXTENSIONS OFF
# Use C++14
CXX_STANDARD 14
CXX_STANDARD_REQUIRED ON
)
target_include_directories
(
VulkanMemoryAllocator PUBLIC
${
VMA_HPP_PATH
}
)
# Only link to Vulkan if static linking is used
if
(
NOT
${
VMA_DYNAMIC_VULKAN_FUNCTIONS
}
)
target_link_libraries
(
VulkanMemoryAllocator PUBLIC Vulkan::Vulkan
)
endif
()
target_compile_definitions
(
VulkanMemoryAllocator
PUBLIC
VMA_USE_STL_CONTAINERS=$<BOOL:
${
VMA_USE_STL_CONTAINERS
}
>
VMA_DYNAMIC_VULKAN_FUNCTIONS=$<BOOL:
${
VMA_DYNAMIC_VULKAN_FUNCTIONS
}
>
VMA_DEBUG_ALWAYS_DEDICATED_MEMORY=$<BOOL:
${
VMA_DEBUG_ALWAYS_DEDICATED_MEMORY
}
>
VMA_DEBUG_INITIALIZE_ALLOCATIONS=$<BOOL:
${
VMA_DEBUG_INITIALIZE_ALLOCATIONS
}
>
VMA_DEBUG_GLOBAL_MUTEX=$<BOOL:
${
VMA_DEBUG_GLOBAL_MUTEX
}
>
VMA_DEBUG_DONT_EXCEED_MAX_MEMORY_ALLOCATION_COUNT=$<BOOL:
${
VMA_DEBUG_DONT_EXCEED_MAX_MEMORY_ALLOCATION_COUNT
}
>
VMA_RECORDING_ENABLED=$<BOOL:
${
VMA_RECORDING_ENABLED
}
>
)
Loading