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
2020-08-12 22:34:09 -04:00

38 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(NOT ENABLE_WINDOWS)
target_compile_options(${target} PUBLIC
-Wall
-Wextra
-Wno-c++98-compat
-Wno-c++98-compat-pedantic
-Wno-padded
-Wno-documentation-unknown-command
-Wno-used-but-marked-unused
-Wno-system-headers
-Wconversion
-Wno-sign-conversion)
endif()
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()
endmacro()