Archived
1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
prism/cmake/Common.cmake

40 lines
1.1 KiB
CMake
Executable file

macro(set_engine_properties target)
target_compile_features(${target} PUBLIC cxx_std_17)
set_target_properties(${target} PROPERTIES CXX_EXTENSIONS OFF)
if(ENABLE_MACOS)
target_compile_definitions(${target} PUBLIC PLATFORM_MACOS)
endif()
if(ENABLE_WINDOWS)
target_compile_definitions(${target} PUBLIC PLATFORM_WINDOWS)
endif()
if(ENABLE_LINUX)
target_compile_definitions(${target} PUBLIC PLATFORM_LINUX)
endif()
if(ENABLE_IOS)
target_compile_definitions(${target} PUBLIC PLATFORM_IOS)
endif()
if(ENABLE_TVOS)
target_compile_definitions(${target} PUBLIC PLATFORM_TVOS)
endif()
if(ENABLE_VULKAN)
target_compile_definitions(${target} PUBLIC ENABLE_VULKAN)
endif()
if(ENABLE_METAL)
target_compile_definitions(${target} PUBLIC ENABLE_METAL)
endif()
if(ENABLE_WEBGPU)
target_compile_definitions(${target} PUBLIC ENABLE_WEBGPU)
endif()
if(ENABLE_DX12)
target_compile_definitions(${target} PUBLIC ENABLE_DX12)
endif()
endmacro()