mirror of
https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
synced 2024-11-05 04:10:06 +00:00
MSVC cleanup
MSVC compiler can be used with Ninja as well. However, the current CMake code doesn't account for it.
This commit is contained in:
parent
5d969741c1
commit
0b7c427971
@ -1,19 +1,17 @@
|
|||||||
set(VMA_LIBRARY_SOURCE_FILES
|
|
||||||
VmaUsage.cpp
|
|
||||||
VmaUsage.h
|
|
||||||
"${PROJECT_SOURCE_DIR}/include/vk_mem_alloc.h"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Visual Studio only debugger symbols
|
|
||||||
if(WIN32 AND ${CMAKE_GENERATOR} MATCHES "Visual Studio.*")
|
|
||||||
set(VMA_LIBRARY_SOURCE_FILES ${VMA_LIBRARY_SOURCE_FILES} vk_mem_alloc.natvis)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CMAKE_DEBUG_POSTFIX d)
|
set(CMAKE_DEBUG_POSTFIX d)
|
||||||
set(CMAKE_RELWITHDEBINFO_POSTFIX rd)
|
set(CMAKE_RELWITHDEBINFO_POSTFIX rd)
|
||||||
set(CMAKE_MINSIZEREL_POSTFIX s)
|
set(CMAKE_MINSIZEREL_POSTFIX s)
|
||||||
|
|
||||||
add_library(VulkanMemoryAllocator ${VMA_LIBRARY_SOURCE_FILES})
|
add_library(VulkanMemoryAllocator
|
||||||
|
VmaUsage.cpp
|
||||||
|
VmaUsage.h
|
||||||
|
${PROJECT_SOURCE_DIR}/include/vk_mem_alloc.h
|
||||||
|
)
|
||||||
|
|
||||||
|
if (MSVC)
|
||||||
|
# Provides MSVC users nicer debugging support
|
||||||
|
target_sources(VulkanMemoryAllocator PRIVATE ${CMAKE_CURRENT_LIST_DIR}/vk_mem_alloc.natvis)
|
||||||
|
endif()
|
||||||
|
|
||||||
set_target_properties(
|
set_target_properties(
|
||||||
VulkanMemoryAllocator PROPERTIES
|
VulkanMemoryAllocator PROPERTIES
|
||||||
@ -63,20 +61,19 @@ if(VMA_BUILD_SAMPLE)
|
|||||||
add_executable(VmaSample ${VMA_SAMPLE_SOURCE_FILES})
|
add_executable(VmaSample ${VMA_SAMPLE_SOURCE_FILES})
|
||||||
add_dependencies(VmaSample VulkanMemoryAllocator VmaSampleShaders)
|
add_dependencies(VmaSample VulkanMemoryAllocator VmaSampleShaders)
|
||||||
|
|
||||||
# Visual Studio specific settings
|
if(MSVC)
|
||||||
if(${CMAKE_GENERATOR} MATCHES "Visual Studio.*")
|
|
||||||
# Use Unicode instead of multibyte set
|
# Use Unicode instead of multibyte set
|
||||||
add_compile_definitions(UNICODE _UNICODE)
|
add_compile_definitions(UNICODE _UNICODE)
|
||||||
|
|
||||||
# Set VmaSample as startup project
|
|
||||||
set_property(DIRECTORY "${PROJECT_SOURCE_DIR}" PROPERTY VS_STARTUP_PROJECT "VmaSample")
|
|
||||||
|
|
||||||
# Add C++ warnings and security checks
|
# Add C++ warnings and security checks
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /permissive- /sdl /W3")
|
add_compile_options(/permissive- /sdl /W3)
|
||||||
|
|
||||||
# Enable multithreaded compiling
|
# Enable multithreaded compiling
|
||||||
target_compile_options(VmaSample PRIVATE "/MP")
|
target_compile_options(VmaSample PRIVATE "/MP")
|
||||||
|
|
||||||
|
# Set VmaSample as startup project
|
||||||
|
set_property(DIRECTORY "${PROJECT_SOURCE_DIR}" PROPERTY VS_STARTUP_PROJECT "VmaSample")
|
||||||
|
|
||||||
# Set working directory for Visual Studio debugger
|
# Set working directory for Visual Studio debugger
|
||||||
set_target_properties(
|
set_target_properties(
|
||||||
VmaSample
|
VmaSample
|
||||||
|
Loading…
Reference in New Issue
Block a user