From 66b3b5f4ff87e705b6bc65df751c91799d1f402a Mon Sep 17 00:00:00 2001 From: Egor Yusov Date: Mon, 12 Feb 2018 20:49:03 -0800 Subject: Fixed formatting of cmake files + couple of minor updates --- BuildUtils.cmake | 136 +++++------ CMakeLists.txt | 178 +++++++-------- Common/CMakeLists.txt | 60 ++--- External/glew/CMakeLists.txt | 16 +- Graphics/GraphicsAccessories/CMakeLists.txt | 22 +- Graphics/GraphicsEngine/CMakeLists.txt | 100 ++++---- Graphics/GraphicsEngineD3D11/CMakeLists.txt | 166 +++++++------- Graphics/GraphicsEngineD3D12/CMakeLists.txt | 224 +++++++++--------- Graphics/GraphicsEngineD3DBase/CMakeLists.txt | 48 ++-- Graphics/GraphicsEngineOpenGL/CMakeLists.txt | 254 +++++++++++---------- .../GraphicsEngineOpenGL/src/TextureBaseGL.cpp | 2 +- Graphics/GraphicsTools/CMakeLists.txt | 58 ++--- Graphics/HLSL2GLSLConverterLib/CMakeLists.txt | 68 +++--- Platforms/Android/CMakeLists.txt | 26 +-- Platforms/Apple/CMakeLists.txt | 22 +- Platforms/Basic/CMakeLists.txt | 28 +-- Platforms/Linux/CMakeLists.txt | 22 +- Platforms/UWP/CMakeLists.txt | 28 +-- Platforms/Win32/CMakeLists.txt | 26 +-- Primitives/CMakeLists.txt | 24 +- Utilities/File2Include/CMakeLists.txt | 52 ++--- 21 files changed, 782 insertions(+), 778 deletions(-) diff --git a/BuildUtils.cmake b/BuildUtils.cmake index 9184feae..4b35fee7 100644 --- a/BuildUtils.cmake +++ b/BuildUtils.cmake @@ -1,81 +1,81 @@ if(PLATFORM_WIN32 OR PLATFORM_UNVIRSAL_WINDOWS) - - function(copy_required_dlls TARGET_NAME) - set(ENGINE_DLLS - GraphicsEngineD3D11-shared - GraphicsEngineD3D12-shared - ) - if(PLATFORM_WIN32) - list(APPEND ENGINE_DLLS GraphicsEngineOpenGL-shared) - endif() + + function(copy_required_dlls TARGET_NAME) + set(ENGINE_DLLS + GraphicsEngineD3D11-shared + GraphicsEngineD3D12-shared + ) + if(PLATFORM_WIN32) + list(APPEND ENGINE_DLLS GraphicsEngineOpenGL-shared) + endif() - foreach(DLL ${ENGINE_DLLS}) - add_custom_command(TARGET ${TARGET_NAME} POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_if_different - "\"$\"" - "\"$\"") - endforeach(DLL) + foreach(DLL ${ENGINE_DLLS}) + add_custom_command(TARGET ${TARGET_NAME} POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy_if_different + "\"$\"" + "\"$\"") + endforeach(DLL) - # Copy D3Dcompiler_47.dll - if(MSVC) - if(WIN64) - set(D3D_COMPILER_PATH "\"$(VC_ExecutablePath_x64_x64)\\D3Dcompiler_47.dll\"") - else() - set(D3D_COMPILER_PATH "\"$(VC_ExecutablePath_x86_x86)\\D3Dcompiler_47.dll\"") - endif() - add_custom_command(TARGET ${TARGET_NAME} POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_if_different - ${D3D_COMPILER_PATH} - "\"$\"") - endif() - endfunction() + # Copy D3Dcompiler_47.dll + if(MSVC) + if(WIN64) + set(D3D_COMPILER_PATH "\"$(VC_ExecutablePath_x64_x64)\\D3Dcompiler_47.dll\"") + else() + set(D3D_COMPILER_PATH "\"$(VC_ExecutablePath_x86_x86)\\D3Dcompiler_47.dll\"") + endif() + add_custom_command(TARGET ${TARGET_NAME} POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy_if_different + ${D3D_COMPILER_PATH} + "\"$\"") + endif() + endfunction() endif(PLATFORM_WIN32 OR PLATFORM_UNVIRSAL_WINDOWS) function(set_common_target_properties TARGET) - - get_target_property(TARGET_TYPE ${TARGET} TYPE) + + get_target_property(TARGET_TYPE ${TARGET} TYPE) - if(MSVC) - # For msvc, enable link-time code generation for release builds (I was not able to - # find any way to set these settings through interface library BuildSettings) - if(TARGET_TYPE STREQUAL STATIC_LIBRARY) - set_target_properties(${TARGET} PROPERTIES - STATIC_LIBRARY_FLAGS_RELEASE /LTCG - STATIC_LIBRARY_FLAGS_MINSIZEREL /LTCG - STATIC_LIBRARY_FLAGS_RELWITHDEBINFO /LTCG - ) - else() - set_target_properties(${TARGET} PROPERTIES - LINK_FLAGS_RELEASE "/LTCG /OPT:REF" - LINK_FLAGS_MINSIZEREL "/LTCG /OPT:REF" - LINK_FLAGS_RELWITHDEBINFO "/LTCG /OPT:REF" - ) + if(MSVC) + # For msvc, enable link-time code generation for release builds (I was not able to + # find any way to set these settings through interface library BuildSettings) + if(TARGET_TYPE STREQUAL STATIC_LIBRARY) + set_target_properties(${TARGET} PROPERTIES + STATIC_LIBRARY_FLAGS_RELEASE /LTCG + STATIC_LIBRARY_FLAGS_MINSIZEREL /LTCG + STATIC_LIBRARY_FLAGS_RELWITHDEBINFO /LTCG + ) + else() + set_target_properties(${TARGET} PROPERTIES + LINK_FLAGS_RELEASE "/LTCG /OPT:REF" + LINK_FLAGS_MINSIZEREL "/LTCG /OPT:REF" + LINK_FLAGS_RELWITHDEBINFO "/LTCG /OPT:REF" + ) - if(PLATFORM_UNIVERSAL_WINDOWS) - # On UWP, disable incremental link to avoid linker warnings - set_target_properties(${TARGET} PROPERTIES - LINK_FLAGS_DEBUG /INCREMENTAL:NO - ) - endif() - endif() - endif() + if(PLATFORM_UNIVERSAL_WINDOWS) + # On UWP, disable incremental link to avoid linker warnings + set_target_properties(${TARGET} PROPERTIES + LINK_FLAGS_DEBUG /INCREMENTAL:NO + ) + endif() + endif() + endif() - if(PLATFORM_ANDROID) - # target_compile_features(BuildSettings INTERFACE cxx_std_11) generates an error in gradle build on Android - # It is crucial to set CXX_STANDARD flag to only affect c++ files and avoid failures compiling c-files: - # error: invalid argument '-std=c++11' not allowed with 'C/ObjC' - set_target_properties(${TARGET} PROPERTIES CXX_STANDARD 11) - endif() - - if(PLATFORM_IOS) - # Feature detection fails for iOS build, so we have to set CXX_STANDARD - # as a workaround - set_target_properties(${TARGET} PROPERTIES CXX_STANDARD 11) + if(PLATFORM_ANDROID) + # target_compile_features(BuildSettings INTERFACE cxx_std_11) generates an error in gradle build on Android + # It is crucial to set CXX_STANDARD flag to only affect c++ files and avoid failures compiling c-files: + # error: invalid argument '-std=c++11' not allowed with 'C/ObjC' + set_target_properties(${TARGET} PROPERTIES CXX_STANDARD 11) + endif() + + if(PLATFORM_IOS) + # Feature detection fails for iOS build, so we have to set CXX_STANDARD + # as a workaround + set_target_properties(${TARGET} PROPERTIES CXX_STANDARD 11) - set_target_properties(${TARGET} PROPERTIES - XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET 10.0 - ) - endif() + set_target_properties(${TARGET} PROPERTIES + XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET 10.0 + ) + endif() endfunction() diff --git a/CMakeLists.txt b/CMakeLists.txt index fce14e7d..07b968ac 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,133 +14,133 @@ set(GLES_SUPPORTED FALSE CACHE INTERNAL "GLES is not spported") set(CMAKE_OBJECT_PATH_MAX 4096) if(WIN32) - if(${CMAKE_SYSTEM_NAME} STREQUAL "WindowsStore") - set(PLATFORM_UNIVERSAL_WINDOWS TRUE CACHE INTERNAL "Target platform: Windows Store") - message("Target platform: Universal Windows") - else() - set(PLATFORM_WIN32 TRUE CACHE INTERNAL "Target platform: Win32") #WIN32 is a variable, so we cannot use string "WIN32" - message("Target platform: Win32") - endif() + if(${CMAKE_SYSTEM_NAME} STREQUAL "WindowsStore") + set(PLATFORM_UNIVERSAL_WINDOWS TRUE CACHE INTERNAL "Target platform: Windows Store") + message("Target platform: Universal Windows") + else() + set(PLATFORM_WIN32 TRUE CACHE INTERNAL "Target platform: Win32") #WIN32 is a variable, so we cannot use string "WIN32" + message("Target platform: Win32") + endif() else() - if(${CMAKE_SYSTEM_NAME} STREQUAL "Android") - set(PLATFORM_ANDROID TRUE CACHE INTERNAL "Target platform: Android") - message("Target platform: Android") - elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") - set(PLATFORM_LINUX TRUE CACHE INTERNAL "Target platform: Linux") - message("Target Platform: Linux") - elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin") - if(IOS) - set(PLATFORM_IOS TRUE CACHE INTERNAL "Target platform: iOS") - message("Target Platform: iOS") - else() - set(PLATFORM_MACOS TRUE CACHE INTERNAL "Target platform: MacOS") - message("Target Platform: MacOS") - endif() - else() - message(FATAL_ERROR "Unsupported platform") - endif() + if(${CMAKE_SYSTEM_NAME} STREQUAL "Android") + set(PLATFORM_ANDROID TRUE CACHE INTERNAL "Target platform: Android") + message("Target platform: Android") + elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") + set(PLATFORM_LINUX TRUE CACHE INTERNAL "Target platform: Linux") + message("Target Platform: Linux") + elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin") + if(IOS) + set(PLATFORM_IOS TRUE CACHE INTERNAL "Target platform: iOS") + message("Target Platform: iOS") + else() + set(PLATFORM_MACOS TRUE CACHE INTERNAL "Target platform: MacOS") + message("Target Platform: MacOS") + endif() + else() + message(FATAL_ERROR "Unsupported platform") + endif() endif(WIN32) add_library(BuildSettings INTERFACE) if(PLATFORM_WIN32) - set(D3D11_SUPPORTED TRUE CACHE INTERNAL "D3D11 supported on Win32 platform") - set(D3D12_SUPPORTED TRUE CACHE INTERNAL "D3D12 supported on Win32 platform") - set(GL_SUPPORTED TRUE CACHE INTERNAL "OpenGL supported on Win32 platform") - target_compile_definitions(BuildSettings INTERFACE PLATFORM_WIN32=1) + set(D3D11_SUPPORTED TRUE CACHE INTERNAL "D3D11 supported on Win32 platform") + set(D3D12_SUPPORTED TRUE CACHE INTERNAL "D3D12 supported on Win32 platform") + set(GL_SUPPORTED TRUE CACHE INTERNAL "OpenGL supported on Win32 platform") + target_compile_definitions(BuildSettings INTERFACE PLATFORM_WIN32=1) elseif(PLATFORM_UNIVERSAL_WINDOWS) - set(D3D11_SUPPORTED TRUE CACHE INTERNAL "D3D11 supported on Univeral Windows platform") - set(D3D12_SUPPORTED TRUE CACHE INTERNAL "D3D12 supported on Univeral Windows platform") - target_compile_definitions(BuildSettings INTERFACE PLATFORM_UNIVERSAL_WINDOWS=1) + set(D3D11_SUPPORTED TRUE CACHE INTERNAL "D3D11 supported on Univeral Windows platform") + set(D3D12_SUPPORTED TRUE CACHE INTERNAL "D3D12 supported on Univeral Windows platform") + target_compile_definitions(BuildSettings INTERFACE PLATFORM_UNIVERSAL_WINDOWS=1) elseif(PLATFORM_ANDROID) - set(GLES_SUPPORTED TRUE CACHE INTERNAL "OpenGLES supported on Android platform") - target_compile_definitions(BuildSettings INTERFACE PLATFORM_ANDROID=1) + set(GLES_SUPPORTED TRUE CACHE INTERNAL "OpenGLES supported on Android platform") + target_compile_definitions(BuildSettings INTERFACE PLATFORM_ANDROID=1) elseif(PLATFORM_LINUX) - set(GL_SUPPORTED TRUE CACHE INTERNAL "OpenGL supported on Linux platform") - target_compile_definitions(BuildSettings INTERFACE PLATFORM_LINUX=1) + set(GL_SUPPORTED TRUE CACHE INTERNAL "OpenGL supported on Linux platform") + target_compile_definitions(BuildSettings INTERFACE PLATFORM_LINUX=1) elseif(PLATFORM_MACOS) - set(GL_SUPPORTED TRUE CACHE INTERNAL "OpenGL supported on MacOS platform") - target_compile_definitions(BuildSettings INTERFACE PLATFORM_MACOS=1) + set(GL_SUPPORTED TRUE CACHE INTERNAL "OpenGL supported on MacOS platform") + target_compile_definitions(BuildSettings INTERFACE PLATFORM_MACOS=1) elseif(PLATFORM_IOS) - set(GLES_SUPPORTED TRUE CACHE INTERNAL "OpenGLES supported on iOS platform") - target_compile_definitions(BuildSettings INTERFACE PLATFORM_IOS=1) + set(GLES_SUPPORTED TRUE CACHE INTERNAL "OpenGLES supported on iOS platform") + target_compile_definitions(BuildSettings INTERFACE PLATFORM_IOS=1) else() - message(FATAL_ERROR "No PLATFORM_XXX variable defined. Make sure that 'DiligentCore' folder is processed first") + message(FATAL_ERROR "No PLATFORM_XXX variable defined. Make sure that 'DiligentCore' folder is processed first") endif() if(MSVC) - # For msvc, enable level 4 warnings except for - # - w4100 - unreferenced formal parameter - # - w4505 - unreferenced local function has been removed - target_compile_options(BuildSettings INTERFACE /W4 /wd4100 /wd4505) - # In all releases mode also: - # - disable w4189 - local variable is initialized but not referenced - # - Enable AVX2 instruction set (/arch:AVX2) - # - Disable RTTI (/GR-) - # - Enable whole program optimizaion (/GL) - # - Enable string pooling (/GF) - set(MSVC_ALL_RELEASE_COMPILE_OPTIONS /arch:AVX2 /wd4189 /GR- /GL /GF) - #target_compile_options(BuildSettings INTERFACE "$<$:/arch:AVX2 /wd4189 /Ot") - # In RELEASE mode: - # - Set favor fast code option (/Ot) - # - Enable intrinsic functions (/Oi) - set(MSVC_RELEASE_COMPILE_OPTIONS ${MSVC_ALL_RELEASE_COMPILE_OPTIONS} /Ot /Oi) - # In MINSIZEREL mode set favor small code option (/Os) - set(MSVC_MINSIZEREL_COMPILE_OPTIONS ${MSVC_ALL_RELEASE_COMPILE_OPTIONS} /Os) - set(MSVC_RELWITHDEBINFO_COMPILE_OPTIONS ${MSVC_ALL_RELEASE_COMPILE_OPTIONS}) - target_compile_options(BuildSettings INTERFACE "$<$:${MSVC_RELEASE_COMPILE_OPTIONS}>") - target_compile_options(BuildSettings INTERFACE "$<$:${MSVC_MINSIZEREL_COMPILE_OPTIONS}>") - target_compile_options(BuildSettings INTERFACE "$<$:${MSVC_RELWITHDEBINFO_COMPILE_OPTIONS}>") - # !!!NOTE!!! For some reason above is the only form of generator expression that works - # For instance, this way - # target_compile_options(BuildSettings INTERFACE "$<$:/Ot>") - # does not work as expected + # For msvc, enable level 4 warnings except for + # - w4100 - unreferenced formal parameter + # - w4505 - unreferenced local function has been removed + target_compile_options(BuildSettings INTERFACE /W4 /wd4100 /wd4505) + # In all releases mode also: + # - disable w4189 - local variable is initialized but not referenced + # - Enable AVX2 instruction set (/arch:AVX2) + # - Disable RTTI (/GR-) + # - Enable whole program optimizaion (/GL) + # - Enable string pooling (/GF) + set(MSVC_ALL_RELEASE_COMPILE_OPTIONS /arch:AVX2 /wd4189 /GR- /GL /GF) + #target_compile_options(BuildSettings INTERFACE "$<$:/arch:AVX2 /wd4189 /Ot") + # In RELEASE mode: + # - Set favor fast code option (/Ot) + # - Enable intrinsic functions (/Oi) + set(MSVC_RELEASE_COMPILE_OPTIONS ${MSVC_ALL_RELEASE_COMPILE_OPTIONS} /Ot /Oi) + # In MINSIZEREL mode set favor small code option (/Os) + set(MSVC_MINSIZEREL_COMPILE_OPTIONS ${MSVC_ALL_RELEASE_COMPILE_OPTIONS} /Os) + set(MSVC_RELWITHDEBINFO_COMPILE_OPTIONS ${MSVC_ALL_RELEASE_COMPILE_OPTIONS}) + target_compile_options(BuildSettings INTERFACE "$<$:${MSVC_RELEASE_COMPILE_OPTIONS}>") + target_compile_options(BuildSettings INTERFACE "$<$:${MSVC_MINSIZEREL_COMPILE_OPTIONS}>") + target_compile_options(BuildSettings INTERFACE "$<$:${MSVC_RELWITHDEBINFO_COMPILE_OPTIONS}>") + # !!!NOTE!!! For some reason above is the only form of generator expression that works + # For instance, this way + # target_compile_options(BuildSettings INTERFACE "$<$:/Ot>") + # does not work as expected else() - set(DEBUG_MACROS _DEBUG DEBUG) - set(RELEASE_MACROS NDEBUG) - target_compile_definitions(BuildSettings INTERFACE "$<$:${DEBUG_MACROS}>") - target_compile_definitions(BuildSettings INTERFACE "$<$:${RELEASE_MACROS}>") - target_compile_definitions(BuildSettings INTERFACE "$<$:${RELEASE_MACROS}>") - target_compile_definitions(BuildSettings INTERFACE "$<$:${RELEASE_MACROS}>") + set(DEBUG_MACROS _DEBUG DEBUG) + set(RELEASE_MACROS NDEBUG) + target_compile_definitions(BuildSettings INTERFACE "$<$:${DEBUG_MACROS}>") + target_compile_definitions(BuildSettings INTERFACE "$<$:${RELEASE_MACROS}>") + target_compile_definitions(BuildSettings INTERFACE "$<$:${RELEASE_MACROS}>") + target_compile_definitions(BuildSettings INTERFACE "$<$:${RELEASE_MACROS}>") endif(MSVC) if(PLATFORM_LINUX) - if(CMAKE_CXX_COMPILER_ID MATCHES "GNU") - # Without -fPIC option GCC fails to link static libraries into dynamic library: - # -fPIC - # If supported for the target machine, emit position-independent code, suitable for - # dynamic linking and avoiding any limit on the size of the global offset table. - target_compile_options(BuildSettings INTERFACE -fPIC) - endif() + if(CMAKE_CXX_COMPILER_ID MATCHES "GNU") + # Without -fPIC option GCC fails to link static libraries into dynamic library: + # -fPIC + # If supported for the target machine, emit position-independent code, suitable for + # dynamic linking and avoiding any limit on the size of the global offset table. + target_compile_options(BuildSettings INTERFACE -fPIC) + endif() endif() if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") - set(ARCH 64 CACHE INTERNAL "64-bit architecture") + set(ARCH 64 CACHE INTERNAL "64-bit architecture") else() - set(ARCH 32 CACHE INTERNAL "32-bit architecture") + set(ARCH 32 CACHE INTERNAL "32-bit architecture") endif() if(PLATFORM_WIN32 OR PLATFORM_UNIVERSAL_WINDOWS OR PLATFORM_MACOS) - # https://cmake.org/cmake/help/v3.8/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html#prop_gbl:CMAKE_CXX_KNOWN_FEATURES - target_compile_features(BuildSettings INTERFACE cxx_std_11) # Generates an error in gradle build on Android + # https://cmake.org/cmake/help/v3.8/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html#prop_gbl:CMAKE_CXX_KNOWN_FEATURES + target_compile_features(BuildSettings INTERFACE cxx_std_11) # Generates an error in gradle build on Android elseif(PLATFORM_ANDROID) - # LOCAL_CPP_FEATURES := exceptions rtti + # LOCAL_CPP_FEATURES := exceptions rtti elseif(PLATFORM_IOS) - + endif() if(PLATFORM_MACOS) - find_library(APP_KIT AppKit) - if (NOT APP_KIT) - message(FATAL_ERROR "AppKit not found") - endif() + find_library(APP_KIT AppKit) + if (NOT APP_KIT) + message(FATAL_ERROR "AppKit not found") + endif() elseif(PLATFORM_IOS) find_library(CORE_FOUNDATION CoreFoundation) if(NOT CORE_FOUNDATION) diff --git a/Common/CMakeLists.txt b/Common/CMakeLists.txt index 190f5e83..93aa5895 100644 --- a/Common/CMakeLists.txt +++ b/Common/CMakeLists.txt @@ -3,52 +3,52 @@ cmake_minimum_required (VERSION 3.6) project(Common CXX) set(INCLUDE - include/pch.h + include/pch.h ) set(INTERFACE - interface/AdvancedMath.h - interface/BasicMath.h - interface/AdaptiveFixedBlockAllocator.h - interface/BasicFileStream.h - interface/DataBlobImpl.h - interface/DefaultRawMemoryAllocator.h - interface/FileWrapper.h - interface/FixedBlockMemoryAllocator.h - interface/HashUtils.h - interface/LockHelper.h - interface/ObjectBase.h - interface/RefCntAutoPtr.h - interface/RefCountedObjectImpl.h - interface/STDAllocator.h - interface/StringDataBlobImpl.h - interface/StringTools.h - interface/Timer.h - interface/UniqueIdentifier.h - interface/ValidatedCast.h + interface/AdvancedMath.h + interface/BasicMath.h + interface/AdaptiveFixedBlockAllocator.h + interface/BasicFileStream.h + interface/DataBlobImpl.h + interface/DefaultRawMemoryAllocator.h + interface/FileWrapper.h + interface/FixedBlockMemoryAllocator.h + interface/HashUtils.h + interface/LockHelper.h + interface/ObjectBase.h + interface/RefCntAutoPtr.h + interface/RefCountedObjectImpl.h + interface/STDAllocator.h + interface/StringDataBlobImpl.h + interface/StringTools.h + interface/Timer.h + interface/UniqueIdentifier.h + interface/ValidatedCast.h ) set(SOURCE - src/BasicFileStream.cpp - src/DataBlobImpl.cpp - src/DefaultRawMemoryAllocator.cpp - src/FixedBlockMemoryAllocator.cpp - src/Timer.cpp + src/BasicFileStream.cpp + src/DataBlobImpl.cpp + src/DefaultRawMemoryAllocator.cpp + src/FixedBlockMemoryAllocator.cpp + src/Timer.cpp ) add_library(Common STATIC ${SOURCE} ${INCLUDE} ${INTERFACE}) target_include_directories(Common PRIVATE - include + include PUBLIC - interface + interface ) target_link_libraries(Common PUBLIC - BuildSettings - TargetPlatform + BuildSettings + TargetPlatform ) set_common_target_properties(Common) @@ -57,5 +57,5 @@ source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${INTERFACE}) set_target_properties(Common PROPERTIES - FOLDER Core + FOLDER Core ) diff --git a/External/glew/CMakeLists.txt b/External/glew/CMakeLists.txt index 890e6f05..dc8eac5c 100644 --- a/External/glew/CMakeLists.txt +++ b/External/glew/CMakeLists.txt @@ -3,12 +3,12 @@ cmake_minimum_required (VERSION 3.3) project(glew-static) set(SOURCE - src/glew.c + src/glew.c ) set(INCLUDE - include/GL/glew.h - include/GL/wglew.h + include/GL/glew.h + include/GL/wglew.h ) add_library(glew-static STATIC ${SOURCE} ${INCLUDE}) @@ -16,24 +16,24 @@ set_common_target_properties(glew-static) target_compile_definitions(glew-static PUBLIC - GLEW_STATIC - GLEW_NO_GLU + GLEW_STATIC + GLEW_NO_GLU ) target_include_directories(glew-static PUBLIC - include + include ) target_link_libraries(glew-static PRIVATE BuildSettings) if(MSVC) - target_compile_options(glew-static PRIVATE /wd4456) + target_compile_options(glew-static PRIVATE /wd4456) endif() source_group("src" FILES ${SOURCE}) source_group("include" FILES ${INCLUDE}) set_target_properties(glew-static PROPERTIES - FOLDER Core/External + FOLDER Core/External ) diff --git a/Graphics/GraphicsAccessories/CMakeLists.txt b/Graphics/GraphicsAccessories/CMakeLists.txt index 7490ab90..8bf7d501 100644 --- a/Graphics/GraphicsAccessories/CMakeLists.txt +++ b/Graphics/GraphicsAccessories/CMakeLists.txt @@ -3,29 +3,29 @@ cmake_minimum_required (VERSION 3.6) project(GraphicsAccessories CXX) set(INTERFACE - interface/RingBuffer.h - interface/VariableSizeAllocationsManager.h - interface/VariableSizeGPUAllocationsManager.h - interface/GraphicsAccessories.h + interface/RingBuffer.h + interface/VariableSizeAllocationsManager.h + interface/VariableSizeGPUAllocationsManager.h + interface/GraphicsAccessories.h ) set(SOURCE - src/test.cpp - src/GraphicsAccessories.cpp + src/test.cpp + src/GraphicsAccessories.cpp ) add_library(GraphicsAccessories STATIC ${SOURCE} ${INTERFACE}) target_include_directories(GraphicsAccessories PUBLIC - interface + interface ) target_link_libraries(GraphicsAccessories PUBLIC - BuildSettings - Common - GraphicsEngineInterface + BuildSettings + Common + GraphicsEngineInterface ) set_common_target_properties(GraphicsAccessories) @@ -34,5 +34,5 @@ source_group("src" FILES ${SOURCE}) source_group("interface" FILES ${INTERFACE}) set_target_properties(GraphicsAccessories PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) diff --git a/Graphics/GraphicsEngine/CMakeLists.txt b/Graphics/GraphicsEngine/CMakeLists.txt index ec24e4ab..c226701e 100644 --- a/Graphics/GraphicsEngine/CMakeLists.txt +++ b/Graphics/GraphicsEngine/CMakeLists.txt @@ -3,55 +3,55 @@ cmake_minimum_required (VERSION 3.6) project(GraphicsEngine CXX) set(INCLUDE - include/BufferBase.h - include/BufferViewBase.h - include/CommandListBase.h - include/Defines.h - include/DeviceContextBase.h - include/DeviceObjectBase.h - include/EngineMemory.h - include/pch.h - include/PipelineStateBase.h - include/RenderDeviceBase.h - include/ResourceMappingImpl.h - include/SamplerBase.h - include/ShaderBase.h - include/ShaderResourceBindingBase.h - include/StateObjectsRegistry.h - include/SwapChainBase.h - include/TextureBase.h - include/TextureViewBase.h + include/BufferBase.h + include/BufferViewBase.h + include/CommandListBase.h + include/Defines.h + include/DeviceContextBase.h + include/DeviceObjectBase.h + include/EngineMemory.h + include/pch.h + include/PipelineStateBase.h + include/RenderDeviceBase.h + include/ResourceMappingImpl.h + include/SamplerBase.h + include/ShaderBase.h + include/ShaderResourceBindingBase.h + include/StateObjectsRegistry.h + include/SwapChainBase.h + include/TextureBase.h + include/TextureViewBase.h ) set(INTERFACE - interface/BlendState.h - interface/Buffer.h - interface/BufferView.h - interface/CommandList.h - interface/Constants.h - interface/DepthStencilState.h - interface/DeviceCaps.h - interface/DeviceContext.h - interface/DeviceObject.h - interface/GraphicsTypes.h - interface/InputLayout.h - interface/MapHelper.h - interface/PipelineState.h - interface/RasterizerState.h - interface/RenderDevice.h - interface/ResourceMapping.h - interface/Sampler.h - interface/Shader.h - interface/ShaderResourceBinding.h - interface/SwapChain.h - interface/Texture.h - interface/TextureView.h + interface/BlendState.h + interface/Buffer.h + interface/BufferView.h + interface/CommandList.h + interface/Constants.h + interface/DepthStencilState.h + interface/DeviceCaps.h + interface/DeviceContext.h + interface/DeviceObject.h + interface/GraphicsTypes.h + interface/InputLayout.h + interface/MapHelper.h + interface/PipelineState.h + interface/RasterizerState.h + interface/RenderDevice.h + interface/ResourceMapping.h + interface/Sampler.h + interface/Shader.h + interface/ShaderResourceBinding.h + interface/SwapChain.h + interface/Texture.h + interface/TextureView.h ) set(SOURCE - src/EngineMemory.cpp - src/ResourceMapping.cpp - src/Texture.cpp + src/EngineMemory.cpp + src/ResourceMapping.cpp + src/Texture.cpp ) add_library(GraphicsEngine STATIC ${SOURCE} ${INTERFACE} ${INCLUDE}) @@ -59,16 +59,16 @@ set_common_target_properties(GraphicsEngine) target_include_directories(GraphicsEngine PUBLIC - include - interface + include + interface ) target_link_libraries(GraphicsEngine PUBLIC - BuildSettings - PlatformInterface - Common - GraphicsAccessories + BuildSettings + PlatformInterface + Common + GraphicsAccessories ) source_group("src" FILES ${SOURCE}) @@ -76,5 +76,5 @@ source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${INTERFACE}) set_target_properties(GraphicsEngine PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) diff --git a/Graphics/GraphicsEngineD3D11/CMakeLists.txt b/Graphics/GraphicsEngineD3D11/CMakeLists.txt index a26247ac..16f62cf6 100644 --- a/Graphics/GraphicsEngineD3D11/CMakeLists.txt +++ b/Graphics/GraphicsEngineD3D11/CMakeLists.txt @@ -4,101 +4,101 @@ project(GraphicsEngineD3D11 CXX) set(INCLUDE - include/BufferD3D11Impl.h - include/BufferViewD3D11Impl.h - include/CommandListD3D11Impl.h - include/D3D11DebugUtilities.h - include/D3D11TypeConversions.h - include/D3D11TypeDefinitions.h - include/DeviceContextD3D11Impl.h - include/EngineD3D11Defines.h - include/pch.h - include/PipelineStateD3D11Impl.h - include/RenderDeviceD3D11Impl.h - include/SamplerD3D11Impl.h - include/ShaderD3D11Impl.h - include/ShaderResourceBindingD3D11Impl.h - include/ShaderResourceCacheD3D11.h - include/ShaderResourceLayoutD3D11.h - include/ShaderResourcesD3D11.h - include/SwapChainD3D11Impl.h - include/targetver.h - include/Texture1D_D3D11.h - include/Texture2D_D3D11.h - include/Texture3D_D3D11.h - include/TextureBaseD3D11.h - include/TextureViewD3D11Impl.h + include/BufferD3D11Impl.h + include/BufferViewD3D11Impl.h + include/CommandListD3D11Impl.h + include/D3D11DebugUtilities.h + include/D3D11TypeConversions.h + include/D3D11TypeDefinitions.h + include/DeviceContextD3D11Impl.h + include/EngineD3D11Defines.h + include/pch.h + include/PipelineStateD3D11Impl.h + include/RenderDeviceD3D11Impl.h + include/SamplerD3D11Impl.h + include/ShaderD3D11Impl.h + include/ShaderResourceBindingD3D11Impl.h + include/ShaderResourceCacheD3D11.h + include/ShaderResourceLayoutD3D11.h + include/ShaderResourcesD3D11.h + include/SwapChainD3D11Impl.h + include/targetver.h + include/Texture1D_D3D11.h + include/Texture2D_D3D11.h + include/Texture3D_D3D11.h + include/TextureBaseD3D11.h + include/TextureViewD3D11Impl.h ) set(INTERFACE - interface/BufferD3D11.h - interface/BufferViewD3D11.h - interface/DeviceContextD3D11.h - interface/EngineD3D11Attribs.h - interface/PipelineStateD3D11.h - interface/RenderDeviceD3D11.h - interface/RenderDeviceFactoryD3D11.h - interface/SamplerD3D11.h - interface/ShaderD3D11.h - interface/ShaderResourceBindingD3D11.h - interface/SwapChainD3D11.h - interface/TextureD3D11.h - interface/TextureViewD3D11.h + interface/BufferD3D11.h + interface/BufferViewD3D11.h + interface/DeviceContextD3D11.h + interface/EngineD3D11Attribs.h + interface/PipelineStateD3D11.h + interface/RenderDeviceD3D11.h + interface/RenderDeviceFactoryD3D11.h + interface/SamplerD3D11.h + interface/ShaderD3D11.h + interface/ShaderResourceBindingD3D11.h + interface/SwapChainD3D11.h + interface/TextureD3D11.h + interface/TextureViewD3D11.h ) set(SRC - src/BufferD3D11Impl.cpp - src/BufferViewD3D11Impl.cpp - src/CommandListD3D11Impl.cpp - src/D3D11DebugUtilities.cpp - src/D3D11TypeConversions.cpp - src/DeviceContextD3D11Impl.cpp - src/PipelineStateD3D11Impl.cpp - src/RenderDeviceD3D11Impl.cpp - src/RenderDeviceFactoryD3D11.cpp - src/SamplerD3D11Impl.cpp - src/ShaderD3D11Impl.cpp - src/ShaderResourceBindingD3D11Impl.cpp - src/ShaderResourceCacheD3D11.cpp - src/ShaderResourceLayoutD3D11.cpp - src/ShaderResourcesD3D11.cpp - src/SwapChainD3D11Impl.cpp - src/Texture1D_D3D11.cpp - src/Texture2D_D3D11.cpp - src/Texture3D_D3D11.cpp - src/TextureBaseD3D11.cpp - src/TextureViewD3D11Impl.cpp + src/BufferD3D11Impl.cpp + src/BufferViewD3D11Impl.cpp + src/CommandListD3D11Impl.cpp + src/D3D11DebugUtilities.cpp + src/D3D11TypeConversions.cpp + src/DeviceContextD3D11Impl.cpp + src/PipelineStateD3D11Impl.cpp + src/RenderDeviceD3D11Impl.cpp + src/RenderDeviceFactoryD3D11.cpp + src/SamplerD3D11Impl.cpp + src/ShaderD3D11Impl.cpp + src/ShaderResourceBindingD3D11Impl.cpp + src/ShaderResourceCacheD3D11.cpp + src/ShaderResourceLayoutD3D11.cpp + src/ShaderResourcesD3D11.cpp + src/SwapChainD3D11Impl.cpp + src/Texture1D_D3D11.cpp + src/Texture2D_D3D11.cpp + src/Texture3D_D3D11.cpp + src/TextureBaseD3D11.cpp + src/TextureViewD3D11Impl.cpp ) add_library(GraphicsEngineD3D11Interface INTERFACE) target_include_directories(GraphicsEngineD3D11Interface INTERFACE - interface + interface ) target_link_libraries(GraphicsEngineD3D11Interface INTERFACE - GraphicsEngineInterface + GraphicsEngineInterface ) add_library(GraphicsEngineD3D11-static STATIC - ${SRC} ${INTERFACE} ${INCLUDE} - readme.md + ${SRC} ${INTERFACE} ${INCLUDE} + readme.md ) add_library(GraphicsEngineD3D11-shared SHARED - ${SRC} ${INTERFACE} ${INCLUDE} - src/DLLMain.cpp - src/GraphicsEngineD3D11.def - readme.md + ${SRC} ${INTERFACE} ${INCLUDE} + src/DLLMain.cpp + src/GraphicsEngineD3D11.def + readme.md ) set_target_properties(GraphicsEngineD3D11-shared PROPERTIES - OUTPUT_NAME_DEBUG GraphicsEngineD3D11${DLL_DBG_SUFFIX} - OUTPUT_NAME_RELEASE GraphicsEngineD3D11${DLL_REL_SUFFIX} - OUTPUT_NAME_RELWITHDEBINFO GraphicsEngineD3D11${DLL_REL_SUFFIX} - OUTPUT_NAME_MINSIZEREL GraphicsEngineD3D11${DLL_REL_SUFFIX} + OUTPUT_NAME_DEBUG GraphicsEngineD3D11${DLL_DBG_SUFFIX} + OUTPUT_NAME_RELEASE GraphicsEngineD3D11${DLL_REL_SUFFIX} + OUTPUT_NAME_RELWITHDEBINFO GraphicsEngineD3D11${DLL_REL_SUFFIX} + OUTPUT_NAME_MINSIZEREL GraphicsEngineD3D11${DLL_REL_SUFFIX} ) set_common_target_properties(GraphicsEngineD3D11-shared) @@ -106,25 +106,25 @@ set_common_target_properties(GraphicsEngineD3D11-static) target_include_directories(GraphicsEngineD3D11-static PRIVATE - include + include ) target_include_directories(GraphicsEngineD3D11-shared PRIVATE - include + include ) set(PRIVATE_DEPENDENCIES - BuildSettings - GraphicsEngineD3DBase - TargetPlatform - Common - d3d11.lib - d3dcompiler.lib + BuildSettings + GraphicsEngineD3DBase + TargetPlatform + Common + d3d11.lib + d3dcompiler.lib ) set(PUBLIC_DEPENDENCIES - GraphicsEngineD3D11Interface + GraphicsEngineD3D11Interface ) target_link_libraries(GraphicsEngineD3D11-static PRIVATE ${PRIVATE_DEPENDENCIES} PUBLIC ${PUBLIC_DEPENDENCIES}) @@ -135,18 +135,18 @@ target_compile_definitions(GraphicsEngineD3D11-shared PUBLIC ENGINE_DLL=1) source_group("src" FILES ${SRC} ) source_group("dll" FILES - src/DLLMain.cpp - src/GraphicsEngineD3D11.def + src/DLLMain.cpp + src/GraphicsEngineD3D11.def ) source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${INTERFACE}) set_target_properties(GraphicsEngineD3D11-static PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) set_target_properties(GraphicsEngineD3D11-shared PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) set_source_files_properties( diff --git a/Graphics/GraphicsEngineD3D12/CMakeLists.txt b/Graphics/GraphicsEngineD3D12/CMakeLists.txt index fadf9fba..850bec5c 100644 --- a/Graphics/GraphicsEngineD3D12/CMakeLists.txt +++ b/Graphics/GraphicsEngineD3D12/CMakeLists.txt @@ -3,149 +3,149 @@ cmake_minimum_required (VERSION 3.10) project(GraphicsEngineD3D12 CXX) set(INCLUDE - include/BufferD3D12Impl.h - include/BufferViewD3D12Impl.h - include/CommandContext.h - include/CommandListD3D12Impl.h - include/CommandListManager.h - include/CommandQueueD3D12Impl.h - include/D3D12ResourceBase.h - include/D3D12TypeConversions.h - include/D3D12TypeDefinitions.h - include/D3D12Utils.h - include/d3dx12_win.h - include/DescriptorHeap.h - include/DeviceContextD3D12Impl.h - include/DynamicUploadHeap.h - include/GenerateMips.h - include/pch.h - include/PipelineStateD3D12Impl.h - include/RenderDeviceD3D12Impl.h - include/RootSignature.h - include/SamplerD3D12Impl.h - include/ShaderD3D12Impl.h - include/ShaderResourceBindingD3D12Impl.h - include/ShaderResourceCacheD3D12.h - include/ShaderResourceLayoutD3D12.h - include/ShaderResourcesD3D12.h - include/SwapChainD3D12Impl.h - include/TextureD3D12Impl.h - include/TextureViewD3D12Impl.h + include/BufferD3D12Impl.h + include/BufferViewD3D12Impl.h + include/CommandContext.h + include/CommandListD3D12Impl.h + include/CommandListManager.h + include/CommandQueueD3D12Impl.h + include/D3D12ResourceBase.h + include/D3D12TypeConversions.h + include/D3D12TypeDefinitions.h + include/D3D12Utils.h + include/d3dx12_win.h + include/DescriptorHeap.h + include/DeviceContextD3D12Impl.h + include/DynamicUploadHeap.h + include/GenerateMips.h + include/pch.h + include/PipelineStateD3D12Impl.h + include/RenderDeviceD3D12Impl.h + include/RootSignature.h + include/SamplerD3D12Impl.h + include/ShaderD3D12Impl.h + include/ShaderResourceBindingD3D12Impl.h + include/ShaderResourceCacheD3D12.h + include/ShaderResourceLayoutD3D12.h + include/ShaderResourcesD3D12.h + include/SwapChainD3D12Impl.h + include/TextureD3D12Impl.h + include/TextureViewD3D12Impl.h ) set(INTERFACE - interface/BufferD3D12.h - interface/BufferViewD3D12.h - interface/CommandQueueD3D12.h - interface/DeviceContextD3D12.h - interface/PipelineStateD3D12.h - interface/RenderDeviceD3D12.h - interface/RenderDeviceFactoryD3D12.h - interface/SamplerD3D12.h - interface/ShaderD3D12.h - interface/ShaderResourceBindingD3D12.h - interface/SwapChainD3D12.h - interface/TextureD3D12.h - interface/TextureViewD3D12.h + interface/BufferD3D12.h + interface/BufferViewD3D12.h + interface/CommandQueueD3D12.h + interface/DeviceContextD3D12.h + interface/PipelineStateD3D12.h + interface/RenderDeviceD3D12.h + interface/RenderDeviceFactoryD3D12.h + interface/SamplerD3D12.h + interface/ShaderD3D12.h + interface/ShaderResourceBindingD3D12.h + interface/SwapChainD3D12.h + interface/TextureD3D12.h + interface/TextureViewD3D12.h ) set(SRC - src/BufferD3D12Impl.cpp - src/BufferViewD3D12Impl.cpp - src/CommandContext.cpp - src/CommandListManager.cpp - src/CommandQueueD3D12Impl.cpp - src/D3D12ResourceBase.cpp - src/D3D12TypeConversions.cpp - src/D3D12Utils.cpp - src/DescriptorHeap.cpp - src/DeviceContextD3D12Impl.cpp - src/DynamicUploadHeap.cpp - src/GenerateMips.cpp - src/PipelineStateD3D12Impl.cpp - src/RenderDeviceD3D12Impl.cpp - src/RenderDeviceFactoryD3D12.cpp - src/RootSignature.cpp - src/SamplerD3D12Impl.cpp - src/ShaderD3D12Impl.cpp - src/ShaderResourceBindingD3D12Impl.cpp - src/ShaderResourceCacheD3D12.cpp - src/ShaderResourceLayoutD3D12.cpp - src/ShaderResourcesD3D12.cpp - src/SwapChainD3D12Impl.cpp - src/TextureD3D12Impl.cpp - src/TextureViewD3D12Impl.cpp + src/BufferD3D12Impl.cpp + src/BufferViewD3D12Impl.cpp + src/CommandContext.cpp + src/CommandListManager.cpp + src/CommandQueueD3D12Impl.cpp + src/D3D12ResourceBase.cpp + src/D3D12TypeConversions.cpp + src/D3D12Utils.cpp + src/DescriptorHeap.cpp + src/DeviceContextD3D12Impl.cpp + src/DynamicUploadHeap.cpp + src/GenerateMips.cpp + src/PipelineStateD3D12Impl.cpp + src/RenderDeviceD3D12Impl.cpp + src/RenderDeviceFactoryD3D12.cpp + src/RootSignature.cpp + src/SamplerD3D12Impl.cpp + src/ShaderD3D12Impl.cpp + src/ShaderResourceBindingD3D12Impl.cpp + src/ShaderResourceCacheD3D12.cpp + src/ShaderResourceLayoutD3D12.cpp + src/ShaderResourcesD3D12.cpp + src/SwapChainD3D12Impl.cpp + src/TextureD3D12Impl.cpp + src/TextureViewD3D12Impl.cpp ) set(SHADERS - shaders/GenerateMips/GenerateMipsGammaCS.hlsl - shaders/GenerateMips/GenerateMipsGammaOddCS.hlsl - shaders/GenerateMips/GenerateMipsGammaOddXCS.hlsl - shaders/GenerateMips/GenerateMipsGammaOddYCS.hlsl - shaders/GenerateMips/GenerateMipsLinearCS.hlsl - shaders/GenerateMips/GenerateMipsLinearOddCS.hlsl - shaders/GenerateMips/GenerateMipsLinearOddXCS.hlsl - shaders/GenerateMips/GenerateMipsLinearOddYCS.hlsl + shaders/GenerateMips/GenerateMipsGammaCS.hlsl + shaders/GenerateMips/GenerateMipsGammaOddCS.hlsl + shaders/GenerateMips/GenerateMipsGammaOddXCS.hlsl + shaders/GenerateMips/GenerateMipsGammaOddYCS.hlsl + shaders/GenerateMips/GenerateMipsLinearCS.hlsl + shaders/GenerateMips/GenerateMipsLinearOddCS.hlsl + shaders/GenerateMips/GenerateMipsLinearOddXCS.hlsl + shaders/GenerateMips/GenerateMipsLinearOddYCS.hlsl ) set_source_files_properties(${SHADERS} PROPERTIES - VS_SHADER_TYPE Compute - VS_SHADER_ENTRYPOINT main - VS_SHADER_MODEL 5.0 - VS_SHADER_VARIABLE_NAME "g_p%(Filename)" - VS_SHADER_OUTPUT_HEADER_FILE "${CMAKE_CURRENT_BINARY_DIR}/CompiledShaders/GenerateMips/%(Filename).h" - #VS_SHADER_FLAGS "/O3" + VS_SHADER_TYPE Compute + VS_SHADER_ENTRYPOINT main + VS_SHADER_MODEL 5.0 + VS_SHADER_VARIABLE_NAME "g_p%(Filename)" + VS_SHADER_OUTPUT_HEADER_FILE "${CMAKE_CURRENT_BINARY_DIR}/CompiledShaders/GenerateMips/%(Filename).h" + #VS_SHADER_FLAGS "/O3" ) add_library(GraphicsEngineD3D12Interface INTERFACE) target_include_directories(GraphicsEngineD3D12Interface INTERFACE - interface + interface ) target_link_libraries(GraphicsEngineD3D12Interface INTERFACE - GraphicsEngineInterface + GraphicsEngineInterface ) add_library(GraphicsEngineD3D12-static STATIC - ${SRC} ${INTERFACE} ${INCLUDE} ${SHADERS} - readme.md - shaders/GenerateMips/GenerateMipsCS.hlsli + ${SRC} ${INTERFACE} ${INCLUDE} ${SHADERS} + readme.md + shaders/GenerateMips/GenerateMipsCS.hlsli ) add_library(GraphicsEngineD3D12-shared SHARED - ${SRC} ${INTERFACE} ${INCLUDE} ${SHADERS} - src/DLLMain.cpp - src/GraphicsEngineD3D12.def - readme.md - shaders/GenerateMips/GenerateMipsCS.hlsli + ${SRC} ${INTERFACE} ${INCLUDE} ${SHADERS} + src/DLLMain.cpp + src/GraphicsEngineD3D12.def + readme.md + shaders/GenerateMips/GenerateMipsCS.hlsli ) target_include_directories(GraphicsEngineD3D12-static PRIVATE - ${CMAKE_CURRENT_BINARY_DIR}/CompiledShaders - include + ${CMAKE_CURRENT_BINARY_DIR}/CompiledShaders + include ) target_include_directories(GraphicsEngineD3D12-shared PRIVATE - ${CMAKE_CURRENT_BINARY_DIR}/CompiledShaders - include + ${CMAKE_CURRENT_BINARY_DIR}/CompiledShaders + include ) set(PRIVATE_DEPENDENCIES - BuildSettings - Common - GraphicsEngineD3DBase - TargetPlatform - dxgi.lib - D3D12.lib - d3dcompiler.lib + BuildSettings + Common + GraphicsEngineD3DBase + TargetPlatform + dxgi.lib + D3D12.lib + d3dcompiler.lib ) set(PUBLIC_DEPENDENCIES - GraphicsEngineD3D12Interface + GraphicsEngineD3D12Interface ) target_link_libraries(GraphicsEngineD3D12-static PRIVATE ${PRIVATE_DEPENDENCIES} PUBLIC ${PUBLIC_DEPENDENCIES}) @@ -154,10 +154,10 @@ target_link_libraries(GraphicsEngineD3D12-shared PRIVATE ${PRIVATE_DEPENDENCIES} target_compile_definitions(GraphicsEngineD3D12-shared PUBLIC ENGINE_DLL=1) set_target_properties(GraphicsEngineD3D12-shared PROPERTIES - OUTPUT_NAME_DEBUG GraphicsEngineD3D12${DLL_DBG_SUFFIX} - OUTPUT_NAME_RELEASE GraphicsEngineD3D12${DLL_REL_SUFFIX} - OUTPUT_NAME_RELWITHDEBINFO GraphicsEngineD3D12${DLL_REL_SUFFIX} - OUTPUT_NAME_MINSIZEREL GraphicsEngineD3D12${DLL_REL_SUFFIX} + OUTPUT_NAME_DEBUG GraphicsEngineD3D12${DLL_DBG_SUFFIX} + OUTPUT_NAME_RELEASE GraphicsEngineD3D12${DLL_REL_SUFFIX} + OUTPUT_NAME_RELWITHDEBINFO GraphicsEngineD3D12${DLL_REL_SUFFIX} + OUTPUT_NAME_MINSIZEREL GraphicsEngineD3D12${DLL_REL_SUFFIX} ) set_common_target_properties(GraphicsEngineD3D12-shared) @@ -166,22 +166,22 @@ set_common_target_properties(GraphicsEngineD3D12-static) source_group("src" FILES ${SRC}) source_group("dll" FILES - src/DLLMain.cpp - src/GraphicsEngineD3D12.def + src/DLLMain.cpp + src/GraphicsEngineD3D12.def ) source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${INTERFACE}) source_group("shaders" FILES - ${SHADERS} - shaders/GenerateMips/GenerateMipsCS.hlsli + ${SHADERS} + shaders/GenerateMips/GenerateMipsCS.hlsli ) set_target_properties(GraphicsEngineD3D12-static PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) set_target_properties(GraphicsEngineD3D12-shared PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) set_source_files_properties( diff --git a/Graphics/GraphicsEngineD3DBase/CMakeLists.txt b/Graphics/GraphicsEngineD3DBase/CMakeLists.txt index 33fd7a76..ee5066ba 100644 --- a/Graphics/GraphicsEngineD3DBase/CMakeLists.txt +++ b/Graphics/GraphicsEngineD3DBase/CMakeLists.txt @@ -3,26 +3,26 @@ cmake_minimum_required (VERSION 3.10) project(GraphicsEngineD3DBase CXX) set(INCLUDE - include/D3DErrors.h - include/D3DShaderResourceLoader.h - include/D3DTypeConversionImpl.h - include/D3DViewDescConversionImpl.h - include/DXGITypeConversions.h - include/HLSLDefinitions.fxh - include/RenderDeviceD3DBase.h - include/ShaderD3DBase.h - include/ShaderResources.h - include/ShaderVariableD3DBase.h + include/D3DErrors.h + include/D3DShaderResourceLoader.h + include/D3DTypeConversionImpl.h + include/D3DViewDescConversionImpl.h + include/DXGITypeConversions.h + include/HLSLDefinitions.fxh + include/RenderDeviceD3DBase.h + include/ShaderD3DBase.h + include/ShaderResources.h + include/ShaderVariableD3DBase.h ) set(SOURCE - src/DXGITypeConversions.cpp - src/ShaderD3DBase.cpp - src/ShaderResources.cpp + src/DXGITypeConversions.cpp + src/ShaderD3DBase.cpp + src/ShaderResources.cpp ) add_library(GraphicsEngineD3DBase STATIC - ${SOURCE} ${INCLUDE} include/HLSLDefinitions_inc.fxh + ${SOURCE} ${INCLUDE} include/HLSLDefinitions_inc.fxh ) set_source_files_properties( @@ -33,15 +33,15 @@ set_source_files_properties( # Create custom target to convert HLSLDefinitions.fxh to HLSLDefinitions_inc.fxh add_custom_target(ProcessHLSLDefinitions SOURCES - include/HLSLDefinitions.fxh + include/HLSLDefinitions.fxh ) add_custom_command(TARGET ProcessHLSLDefinitions - # Unfortunately it is not possible to set TARGET directly to GraphicsEngineD3DBase - # because PRE_BUILD is only supported on Visual Studio 8 or later. For all other generators - # PRE_BUILD is treated as PRE_LINK. + # Unfortunately it is not possible to set TARGET directly to GraphicsEngineD3DBase + # because PRE_BUILD is only supported on Visual Studio 8 or later. For all other generators + # PRE_BUILD is treated as PRE_LINK. COMMAND ${FILE2STRING_PATH} include/HLSLDefinitions.fxh include/HLSLDefinitions_inc.fxh - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMENT "Processing HLSLDefinitions.fxh" VERBATIM ) @@ -50,13 +50,13 @@ add_dependencies(GraphicsEngineD3DBase ProcessHLSLDefinitions) target_include_directories(GraphicsEngineD3DBase PUBLIC - include + include ) target_link_libraries(GraphicsEngineD3DBase PUBLIC - BuildSettings - GraphicsEngine + BuildSettings + GraphicsEngine ) set_common_target_properties(GraphicsEngineD3DBase) @@ -65,8 +65,8 @@ source_group("include" FILES ${INCLUDE}) source_group("generated" FILES include/HLSLDefinitions_inc.fxh) set_target_properties(GraphicsEngineD3DBase PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) set_target_properties(ProcessHLSLDefinitions PROPERTIES - FOLDER Core/Graphics/Helper + FOLDER Core/Graphics/Helper ) \ No newline at end of file diff --git a/Graphics/GraphicsEngineOpenGL/CMakeLists.txt b/Graphics/GraphicsEngineOpenGL/CMakeLists.txt index 02196fc7..d867df43 100644 --- a/Graphics/GraphicsEngineOpenGL/CMakeLists.txt +++ b/Graphics/GraphicsEngineOpenGL/CMakeLists.txt @@ -3,185 +3,189 @@ cmake_minimum_required (VERSION 3.3) project(GraphicsEngineOpenGL CXX) set(INCLUDE - include/AsyncWritableResource.h - include/BufferGLImpl.h - include/BufferViewGLImpl.h - include/DeviceContextGLImpl.h - include/FBOCache.h - include/GLContext.h - include/GLContextState.h - include/GLObjectWrapper.h - include/GLProgram.h - include/GLProgramResources.h - include/GLTypeConversions.h - include/pch.h - include/PipelineStateGLImpl.h - include/RenderDeviceGLImpl.h - include/SamplerGLImpl.h - include/ShaderGLImpl.h - include/ShaderResourceBindingGLImpl.h - include/TexRegionRender.h - include/Texture1D_OGL.h - include/Texture1DArray_OGL.h - include/Texture2D_OGL.h - include/Texture2DArray_OGL.h - include/Texture3D_OGL.h - include/TextureBaseGL.h - include/TextureCube_OGL.h - include/TextureCubeArray_OGL.h - include/TextureViewGLImpl.h - include/VAOCache.h + include/AsyncWritableResource.h + include/BufferGLImpl.h + include/BufferViewGLImpl.h + include/DeviceContextGLImpl.h + include/FBOCache.h + include/GLContext.h + include/GLContextState.h + include/GLObjectWrapper.h + include/GLProgram.h + include/GLProgramResources.h + include/GLTypeConversions.h + include/pch.h + include/PipelineStateGLImpl.h + include/RenderDeviceGLImpl.h + include/SamplerGLImpl.h + include/ShaderGLImpl.h + include/ShaderResourceBindingGLImpl.h + include/TexRegionRender.h + include/Texture1D_OGL.h + include/Texture1DArray_OGL.h + include/Texture2D_OGL.h + include/Texture2DArray_OGL.h + include/Texture3D_OGL.h + include/TextureBaseGL.h + include/TextureCube_OGL.h + include/TextureCubeArray_OGL.h + include/TextureViewGLImpl.h + include/VAOCache.h ) set(INTERFACE - interface/BaseInterfacesGL.h - interface/BufferGL.h - interface/BufferViewGL.h - interface/DeviceContextGL.h - interface/EngineGLAttribs.h - interface/PipelineStateGL.h - interface/RenderDeviceFactoryOpenGL.h - interface/RenderDeviceGL.h - interface/SamplerGL.h - interface/ShaderGL.h - interface/ShaderResourceBindingGL.h - interface/SwapChainGL.h - interface/TextureGL.h - interface/TextureViewGL.h + interface/BaseInterfacesGL.h + interface/BufferGL.h + interface/BufferViewGL.h + interface/DeviceContextGL.h + interface/EngineGLAttribs.h + interface/PipelineStateGL.h + interface/RenderDeviceFactoryOpenGL.h + interface/RenderDeviceGL.h + interface/SamplerGL.h + interface/ShaderGL.h + interface/ShaderResourceBindingGL.h + interface/SwapChainGL.h + interface/TextureGL.h + interface/TextureViewGL.h ) set(SOURCE - src/BufferGLImpl.cpp - src/BufferViewGLImpl.cpp - src/DeviceContextGLImpl.cpp - src/FBOCache.cpp - src/GLContextState.cpp - src/GLObjectWrapper.cpp - src/GLProgram.cpp - src/GLProgramResources.cpp - src/GLTypeConversions.cpp - src/PipelineStateGLImpl.cpp - src/RenderDeviceFactoryOpenGL.cpp - src/RenderDeviceGLImpl.cpp - src/SamplerGLImpl.cpp - src/ShaderGLImpl.cpp - src/ShaderResourceBindingGLImpl.cpp - src/TexRegionRender.cpp - src/Texture1D_OGL.cpp - src/Texture1DArray_OGL.cpp - src/Texture2D_OGL.cpp - src/Texture2DArray_OGL.cpp - src/Texture3D_OGL.cpp - src/TextureBaseGL.cpp - src/TextureCube_OGL.cpp - src/TextureCubeArray_OGL.cpp - src/TextureViewGLImpl.cpp - src/VAOCache.cpp + src/BufferGLImpl.cpp + src/BufferViewGLImpl.cpp + src/DeviceContextGLImpl.cpp + src/FBOCache.cpp + src/GLContextState.cpp + src/GLObjectWrapper.cpp + src/GLProgram.cpp + src/GLProgramResources.cpp + src/GLTypeConversions.cpp + src/PipelineStateGLImpl.cpp + src/RenderDeviceFactoryOpenGL.cpp + src/RenderDeviceGLImpl.cpp + src/SamplerGLImpl.cpp + src/ShaderGLImpl.cpp + src/ShaderResourceBindingGLImpl.cpp + src/TexRegionRender.cpp + src/Texture1D_OGL.cpp + src/Texture1DArray_OGL.cpp + src/Texture2D_OGL.cpp + src/Texture2DArray_OGL.cpp + src/Texture3D_OGL.cpp + src/TextureBaseGL.cpp + src/TextureCube_OGL.cpp + src/TextureCubeArray_OGL.cpp + src/TextureViewGLImpl.cpp + src/VAOCache.cpp ) if(PLATFORM_WIN32) - list(APPEND SOURCE src/GLContextWindows.cpp) + list(APPEND SOURCE src/GLContextWindows.cpp) list(APPEND SOURCE src/SwapChainGLImpl.cpp) - list(APPEND INCLUDE include/GLContextWindows.h) + list(APPEND INCLUDE include/GLContextWindows.h) list(APPEND INCLUDE include/SwapChainGLImpl.h) elseif(PLATFORM_ANDROID) - list(APPEND SOURCE src/GLContextAndroid.cpp) - list(APPEND SOURCE src/RenderDeviceGLESImpl.cpp) - list(APPEND SOURCE src/GLStubsAndroid.cpp) + list(APPEND SOURCE src/GLContextAndroid.cpp) + list(APPEND SOURCE src/RenderDeviceGLESImpl.cpp) + list(APPEND SOURCE src/GLStubsAndroid.cpp) list(APPEND SOURCE src/SwapChainGLImpl.cpp) - list(APPEND INCLUDE include/GLContextAndroid.h) - list(APPEND INCLUDE include/GLStubsAndroid.h) - list(APPEND INCLUDE include/RenderDeviceGLESImpl.h) + list(APPEND INCLUDE include/GLContextAndroid.h) + list(APPEND INCLUDE include/GLStubsAndroid.h) + list(APPEND INCLUDE include/RenderDeviceGLESImpl.h) list(APPEND INCLUDE include/SwapChainGLImpl.h) - list(APPEND INTERFACE interface/RenderDeviceGLES.h) + list(APPEND INTERFACE interface/RenderDeviceGLES.h) elseif(PLATFORM_LINUX) - list(APPEND SOURCE src/GLContextLinux.cpp) + list(APPEND SOURCE src/GLContextLinux.cpp) list(APPEND SOURCE src/SwapChainGLImpl.cpp) - list(APPEND INCLUDE include/GLContextLinux.h) + list(APPEND INCLUDE include/GLContextLinux.h) list(APPEND INCLUDE include/SwapChainGLImpl.h) elseif(PLATFORM_MACOS) - list(APPEND SOURCE src/GLContextMacOS.mm) - list(APPEND INCLUDE include/GLContextMacOS.h) + list(APPEND SOURCE src/GLContextMacOS.mm) + list(APPEND INCLUDE include/GLContextMacOS.h) list(APPEND SOURCE src/SwapChainGLImpl.cpp) list(APPEND INCLUDE include/SwapChainGLImpl.h) elseif(PLATFORM_IOS) - list(APPEND SOURCE src/GLContextIOS.mm) - list(APPEND INCLUDE include/GLContextIOS.h) + list(APPEND SOURCE src/GLContextIOS.mm) + list(APPEND INCLUDE include/GLContextIOS.h) list(APPEND INCLUDE include/GLStubsIOS.h) list(APPEND SOURCE src/SwapChainGLIOS.mm) list(APPEND INCLUDE include/SwapChainGLIOS.h) else() - message(FATAL_ERROR "Unknown platform") + message(FATAL_ERROR "Unknown platform") endif() add_library(GraphicsEngineOpenGLInterface INTERFACE) target_include_directories(GraphicsEngineOpenGLInterface INTERFACE - interface + interface ) target_link_libraries(GraphicsEngineOpenGLInterface INTERFACE - GraphicsEngineInterface + GraphicsEngineInterface ) add_library(GraphicsEngineOpenGL-static STATIC - ${SOURCE} ${INTERFACE} ${INCLUDE} - readme.md + ${SOURCE} ${INTERFACE} ${INCLUDE} + readme.md ) add_library(GraphicsEngineOpenGL-shared SHARED - ${SOURCE} ${INTERFACE} ${INCLUDE} - readme.md + ${SOURCE} ${INTERFACE} ${INCLUDE} + readme.md ) if(PLATFORM_WIN32) - target_sources(GraphicsEngineOpenGL-shared - PRIVATE - src/DLLMain.cpp - src/GraphicsEngineOpenGL.def - ) + target_sources(GraphicsEngineOpenGL-shared + PRIVATE + src/DLLMain.cpp + src/GraphicsEngineOpenGL.def + ) endif() target_include_directories(GraphicsEngineOpenGL-static PRIVATE - include - ../HLSL2GLSLConverterLib/include + include + ../HLSL2GLSLConverterLib/include ) target_include_directories(GraphicsEngineOpenGL-shared PRIVATE - include - ../HLSL2GLSLConverterLib/include + include + ../HLSL2GLSLConverterLib/include ) set(PRIVATE_DEPENDENCIES - BuildSettings - Common - TargetPlatform - GraphicsEngine + BuildSettings + Common + TargetPlatform + GraphicsEngine ) set(PUBLIC_DEPENDENCIES - GraphicsEngineOpenGLInterface - HLSL2GLSLConverterLib + GraphicsEngineOpenGLInterface + HLSL2GLSLConverterLib ) if(PLATFORM_WIN32) - set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPENDENCIES} glew-static opengl32.lib) + set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPENDENCIES} glew-static opengl32.lib) elseif(PLATFORM_ANDROID) - set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPENDENCIES} GLESv3 EGL android) - set_target_properties(GraphicsEngineOpenGL-shared PROPERTIES CXX_VISIBILITY_PRESET hidden) # -fvisibility=hidden + set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPENDENCIES} GLESv3 EGL android) elseif(PLATFORM_LINUX) - set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPENDENCIES} glew-static) + set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPENDENCIES} glew-static) elseif(PLATFORM_MACOS) find_package(OpenGL REQUIRED) set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPENDENCIES} glew-static ${OPENGL_LIBRARY}) elseif(PLATFORM_IOS) set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPENDENCIES} ${OPENGLES}) else() - message(FATAL_ERROR "Unknown platform") + message(FATAL_ERROR "Unknown platform") +endif() + +if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR + CMAKE_CXX_COMPILER_ID MATCHES "GNU") + set_target_properties(GraphicsEngineOpenGL-shared PROPERTIES CXX_VISIBILITY_PRESET hidden) # -fvisibility=hidden endif() if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") @@ -197,16 +201,16 @@ target_link_libraries(GraphicsEngineOpenGL-shared PRIVATE ${PRIVATE_DEPENDENCIES target_compile_definitions(GraphicsEngineOpenGL-shared PUBLIC ENGINE_DLL=1 PRIVATE BUILDING_DLL=1) if(PLATFORM_WIN32) - set_target_properties(GraphicsEngineOpenGL-shared PROPERTIES - OUTPUT_NAME_DEBUG GraphicsEngineOpenGL${DLL_DBG_SUFFIX} - OUTPUT_NAME_RELEASE GraphicsEngineOpenGL${DLL_REL_SUFFIX} - OUTPUT_NAME_RELWITHDEBINFO GraphicsEngineOpenGL${DLL_REL_SUFFIX} - OUTPUT_NAME_MINSIZEREL GraphicsEngineOpenGL${DLL_REL_SUFFIX} - ) + set_target_properties(GraphicsEngineOpenGL-shared PROPERTIES + OUTPUT_NAME_DEBUG GraphicsEngineOpenGL${DLL_DBG_SUFFIX} + OUTPUT_NAME_RELEASE GraphicsEngineOpenGL${DLL_REL_SUFFIX} + OUTPUT_NAME_RELWITHDEBINFO GraphicsEngineOpenGL${DLL_REL_SUFFIX} + OUTPUT_NAME_MINSIZEREL GraphicsEngineOpenGL${DLL_REL_SUFFIX} + ) else() - set_target_properties(GraphicsEngineOpenGL-shared PROPERTIES - OUTPUT_NAME GraphicsEngineOpenGL - ) + set_target_properties(GraphicsEngineOpenGL-shared PROPERTIES + OUTPUT_NAME GraphicsEngineOpenGL + ) endif() set_common_target_properties(GraphicsEngineOpenGL-shared) @@ -214,20 +218,20 @@ set_common_target_properties(GraphicsEngineOpenGL-static) source_group("src" FILES ${SOURCE}) if(PLATFORM_WIN32) - source_group("dll" FILES - src/DLLMain.cpp - src/GraphicsEngineOpenGL.def - ) + source_group("dll" FILES + src/DLLMain.cpp + src/GraphicsEngineOpenGL.def + ) endif() source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${INTERFACE}) set_target_properties(GraphicsEngineOpenGL-static PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) set_target_properties(GraphicsEngineOpenGL-shared PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) set_source_files_properties( diff --git a/Graphics/GraphicsEngineOpenGL/src/TextureBaseGL.cpp b/Graphics/GraphicsEngineOpenGL/src/TextureBaseGL.cpp index 45af9cc9..ff8f4252 100644 --- a/Graphics/GraphicsEngineOpenGL/src/TextureBaseGL.cpp +++ b/Graphics/GraphicsEngineOpenGL/src/TextureBaseGL.cpp @@ -66,7 +66,7 @@ static GLenum GetTextureInternalFormat(DeviceContextGLImpl *pDeviceContextGL, GL glGetTexLevelParameteriv(QueryBindTarget, 0, GL_TEXTURE_INTERNAL_FORMAT, &GlFormat); CHECK_GL_ERROR( "Failed to get texture format through glGetTexLevelParameteriv()" ); VERIFY(GlFormat != 0, "Unable to get texture format"); - VERIFY(TexFmtFromDesc == TEX_FORMAT_UNKNOWN || GlFormat == TexFormatToGLInternalTexFormat(TexFmtFromDesc), "Texture format does not match the format specified by the texture description"); + VERIFY(TexFmtFromDesc == TEX_FORMAT_UNKNOWN || static_cast(GlFormat) == TexFormatToGLInternalTexFormat(TexFmtFromDesc), "Texture format does not match the format specified by the texture description"); #else if(TexFmtFromDesc != TEX_FORMAT_UNKNOWN) GlFormat = TexFormatToGLInternalTexFormat(TexFmtFromDesc); diff --git a/Graphics/GraphicsTools/CMakeLists.txt b/Graphics/GraphicsTools/CMakeLists.txt index d119fe32..3e904606 100644 --- a/Graphics/GraphicsTools/CMakeLists.txt +++ b/Graphics/GraphicsTools/CMakeLists.txt @@ -3,60 +3,60 @@ cmake_minimum_required (VERSION 3.6) project(GraphicsTools CXX) set(INCLUDE - include/BasicShaderSourceStreamFactory.h - include/CommonlyUsedStates.h - include/GraphicsUtilities.h - include/pch.h - include/ShaderMacroHelper.h - include/TextureUploader.h - include/TextureUploaderBase.h + include/BasicShaderSourceStreamFactory.h + include/CommonlyUsedStates.h + include/GraphicsUtilities.h + include/pch.h + include/ShaderMacroHelper.h + include/TextureUploader.h + include/TextureUploaderBase.h ) set(SOURCE - src/BasicShaderSourceStreamFactory.cpp - src/GraphicsUtilities.cpp - src/pch.cpp - src/TextureUploader.cpp + src/BasicShaderSourceStreamFactory.cpp + src/GraphicsUtilities.cpp + src/pch.cpp + src/TextureUploader.cpp ) set(DEPENDENCIES) if(D3D11_SUPPORTED) - list(APPEND SOURCE src/TextureUploaderD3D11.cpp) - list(APPEND INCLUDE include/TextureUploaderD3D11.h) - list(APPEND DEPENDENCIES GraphicsEngineD3D11Interface) + list(APPEND SOURCE src/TextureUploaderD3D11.cpp) + list(APPEND INCLUDE include/TextureUploaderD3D11.h) + list(APPEND DEPENDENCIES GraphicsEngineD3D11Interface) endif() if(D3D12_SUPPORTED) - list(APPEND SOURCE src/TextureUploaderD3D12.cpp) - list(APPEND INCLUDE include/TextureUploaderD3D12.h) - list(APPEND DEPENDENCIES GraphicsEngineD3D12Interface) + list(APPEND SOURCE src/TextureUploaderD3D12.cpp) + list(APPEND INCLUDE include/TextureUploaderD3D12.h) + list(APPEND DEPENDENCIES GraphicsEngineD3D12Interface) endif() if(GL_SUPPORTED OR GLES_SUPPORTED) - list(APPEND SOURCE src/TextureUploaderGL.cpp) - list(APPEND INCLUDE include/TextureUploaderGL.h) - list(APPEND DEPENDENCIES GraphicsEngineOpenGLInterface) + list(APPEND SOURCE src/TextureUploaderGL.cpp) + list(APPEND INCLUDE include/TextureUploaderGL.h) + list(APPEND DEPENDENCIES GraphicsEngineOpenGLInterface) endif() add_library(GraphicsTools STATIC ${SOURCE} ${INCLUDE}) target_include_directories(GraphicsTools PUBLIC - include + include PRIVATE - ../GraphicsEngineD3DBase/include + ../GraphicsEngineD3DBase/include ) target_link_libraries(GraphicsTools PRIVATE - Common - BuildSettings - PlatformInterface - GraphicsAccessories - ${DEPENDENCIES} + Common + BuildSettings + PlatformInterface + GraphicsAccessories + ${DEPENDENCIES} PUBLIC - GraphicsEngineInterface + GraphicsEngineInterface ) set_common_target_properties(GraphicsTools) @@ -66,5 +66,5 @@ source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${INTERFACE}) set_target_properties(GraphicsTools PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) diff --git a/Graphics/HLSL2GLSLConverterLib/CMakeLists.txt b/Graphics/HLSL2GLSLConverterLib/CMakeLists.txt index 1f147ee1..a0855147 100644 --- a/Graphics/HLSL2GLSLConverterLib/CMakeLists.txt +++ b/Graphics/HLSL2GLSLConverterLib/CMakeLists.txt @@ -3,19 +3,19 @@ cmake_minimum_required (VERSION 3.6) project(HLSL2GLSLConverterLib CXX) set(INCLUDE - include/GLSLDefinitions.h - include/HLSL2GLSLConverterImpl.h - include/HLSL2GLSLConverterObject.h - include/HLSLKeywords.h + include/GLSLDefinitions.h + include/HLSL2GLSLConverterImpl.h + include/HLSL2GLSLConverterObject.h + include/HLSLKeywords.h ) set(INTERFACE - interface/HLSL2GLSLConverter.h + interface/HLSL2GLSLConverter.h ) set(SOURCE - src/HLSL2GLSLConverterImpl.cpp - src/HLSL2GLSLConverterObject.cpp + src/HLSL2GLSLConverterImpl.cpp + src/HLSL2GLSLConverterObject.cpp ) add_library(HLSL2GLSLConverterLib STATIC ${SOURCE} ${INTERFACE} ${INCLUDE} include/GLSLDefinitions_inc.h) @@ -28,44 +28,44 @@ set_source_files_properties( target_include_directories(HLSL2GLSLConverterLib PUBLIC - interface + interface PRIVATE - include + include ) target_link_libraries(HLSL2GLSLConverterLib PRIVATE - BuildSettings - Common - PlatformInterface - GraphicsEngine + BuildSettings + Common + PlatformInterface + GraphicsEngine PUBLIC - GraphicsEngineInterface + GraphicsEngineInterface ) if(NOT FILE2STRING_PATH STREQUAL "") - # Create custom target to convert GLSLDefinitions.h to GLSLDefinitions_inc.h - add_custom_target(ProcessGLSLDefinitions - SOURCES - include/GLSLDefinitions.h - ) + # Create custom target to convert GLSLDefinitions.h to GLSLDefinitions_inc.h + add_custom_target(ProcessGLSLDefinitions + SOURCES + include/GLSLDefinitions.h + ) - add_custom_command(TARGET ProcessGLSLDefinitions - # Unfortunately it is not possible to set TARGET directly to HLSL2GLSLConverterLib - # because PRE_BUILD is only supported on Visual Studio 8 or later. For all other generators - # PRE_BUILD is treated as PRE_LINK. - COMMAND ${FILE2STRING_PATH} include/GLSLDefinitions.h include/GLSLDefinitions_inc.h - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - COMMENT "Processing GLSLDefinitions.h" - VERBATIM - ) + add_custom_command(TARGET ProcessGLSLDefinitions + # Unfortunately it is not possible to set TARGET directly to HLSL2GLSLConverterLib + # because PRE_BUILD is only supported on Visual Studio 8 or later. For all other generators + # PRE_BUILD is treated as PRE_LINK. + COMMAND ${FILE2STRING_PATH} include/GLSLDefinitions.h include/GLSLDefinitions_inc.h + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMENT "Processing GLSLDefinitions.h" + VERBATIM + ) - add_dependencies(HLSL2GLSLConverterLib ProcessGLSLDefinitions) - set_target_properties(ProcessGLSLDefinitions PROPERTIES - FOLDER Core/Graphics/Helper - ) + add_dependencies(HLSL2GLSLConverterLib ProcessGLSLDefinitions) + set_target_properties(ProcessGLSLDefinitions PROPERTIES + FOLDER Core/Graphics/Helper + ) else() - message(WARNING "File2String utility is currently unavailable on this host system. This is not an issues unless you modify GLSLDefinitions.h file") + message(WARNING "File2String utility is currently unavailable on this host system. This is not an issues unless you modify GLSLDefinitions.h file") endif() source_group("src" FILES ${SOURCE}) @@ -74,5 +74,5 @@ source_group("interface" FILES ${INTERFACE}) source_group("generated" FILES include/GLSLDefinitions_inc.h) set_target_properties(HLSL2GLSLConverterLib PROPERTIES - FOLDER Core/Graphics + FOLDER Core/Graphics ) diff --git a/Platforms/Android/CMakeLists.txt b/Platforms/Android/CMakeLists.txt index 325276c0..4bcbdc47 100644 --- a/Platforms/Android/CMakeLists.txt +++ b/Platforms/Android/CMakeLists.txt @@ -3,15 +3,15 @@ cmake_minimum_required (VERSION 3.6) project(AndroidPlatform CXX) set(INCLUDE - include/AndroidDebug.h - include/AndroidFileSystem.h - include/AndroidPlatformDefinitions.h - include/AndroidPlatformMisc.h + include/AndroidDebug.h + include/AndroidFileSystem.h + include/AndroidPlatformDefinitions.h + include/AndroidPlatformMisc.h ) set(SOURCE - src/AndroidDebug.cpp - src/AndroidFileSystem.cpp + src/AndroidDebug.cpp + src/AndroidFileSystem.cpp ) add_library(AndroidPlatform ${SOURCE} ${INCLUDE} ${PLATFORM_INTERFACE_HEADERS}) @@ -19,17 +19,17 @@ set_common_target_properties(AndroidPlatform) target_include_directories(AndroidPlatform PUBLIC - include + include ) target_link_libraries(AndroidPlatform PRIVATE - NDKHelper - log + NDKHelper + log PUBLIC - BuildSettings - PlatformInterface - BasicPlatform + BuildSettings + PlatformInterface + BasicPlatform ) source_group("src" FILES ${SOURCE}) @@ -37,5 +37,5 @@ source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${PLATFORM_INTERFACE_HEADERS}) set_target_properties(AndroidPlatform PROPERTIES - FOLDER Core/Platforms + FOLDER Core/Platforms ) diff --git a/Platforms/Apple/CMakeLists.txt b/Platforms/Apple/CMakeLists.txt index fff58122..d8fda4be 100644 --- a/Platforms/Apple/CMakeLists.txt +++ b/Platforms/Apple/CMakeLists.txt @@ -4,15 +4,15 @@ project(ApplePlatform CXX) set(INCLUDE include/CFObjectWrapper.h - include/AppleDebug.h - include/AppleFileSystem.h - include/ApplePlatformDefinitions.h - include/ApplePlatformMisc.h + include/AppleDebug.h + include/AppleFileSystem.h + include/ApplePlatformDefinitions.h + include/ApplePlatformMisc.h ) set(SOURCE - src/AppleDebug.mm - src/AppleFileSystem.cpp + src/AppleDebug.mm + src/AppleFileSystem.cpp ) @@ -21,14 +21,14 @@ set_common_target_properties(ApplePlatform) target_include_directories(ApplePlatform PUBLIC - include + include ) target_link_libraries(ApplePlatform PUBLIC - BuildSettings - BasicPlatform - PlatformInterface + BuildSettings + BasicPlatform + PlatformInterface ) if(PLATFORM_MACOS) @@ -49,5 +49,5 @@ source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${PLATFORM_INTERFACE_HEADERS}) set_target_properties(ApplePlatform PROPERTIES - FOLDER Core/Platforms + FOLDER Core/Platforms ) diff --git a/Platforms/Basic/CMakeLists.txt b/Platforms/Basic/CMakeLists.txt index 5e4d4c54..0f87d74b 100644 --- a/Platforms/Basic/CMakeLists.txt +++ b/Platforms/Basic/CMakeLists.txt @@ -3,22 +3,22 @@ cmake_minimum_required (VERSION 3.6) project(BasicPlatform CXX) set(SOURCE - src/BasicFileSystem.cpp - src/BasicPlatformDebug.cpp + src/BasicFileSystem.cpp + src/BasicPlatformDebug.cpp ) set(INTERFACE - interface/BasicAtomics.h - interface/BasicFileSystem.h - interface/BasicPlatformDebug.h - interface/BasicPlatformMisc.h - interface/DebugUtilities.h - interface/Errors.h + interface/BasicAtomics.h + interface/BasicFileSystem.h + interface/BasicPlatformDebug.h + interface/BasicPlatformMisc.h + interface/DebugUtilities.h + interface/Errors.h ) if(PLATFORM_LINUX OR PLATFORM_WIN32 OR PLATFORM_MACOS OR PLATFORM_IOS) - list(APPEND SOURCE src/StandardFile.cpp) - list(APPEND INTERFACE interface/StandardFile.h) + list(APPEND SOURCE src/StandardFile.cpp) + list(APPEND INTERFACE interface/StandardFile.h) endif() add_library(BasicPlatform STATIC ${SOURCE} ${INTERFACE}) @@ -26,18 +26,18 @@ set_common_target_properties(BasicPlatform) target_include_directories(BasicPlatform PUBLIC - interface + interface ) target_link_libraries(BasicPlatform PUBLIC - BuildSettings - Primitives + BuildSettings + Primitives ) source_group("src" FILES ${SOURCE}) source_group("interface" FILES ${INTERFACE}) set_target_properties(BasicPlatform PROPERTIES - FOLDER Core/Platforms + FOLDER Core/Platforms ) diff --git a/Platforms/Linux/CMakeLists.txt b/Platforms/Linux/CMakeLists.txt index 711bcb62..8d60cf09 100644 --- a/Platforms/Linux/CMakeLists.txt +++ b/Platforms/Linux/CMakeLists.txt @@ -3,15 +3,15 @@ cmake_minimum_required (VERSION 3.6) project(LinuxPlatform CXX) set(INCLUDE - include/LinuxDebug.h - include/LinuxFileSystem.h - include/LinuxPlatformDefinitions.h - include/LinuxPlatformMisc.h + include/LinuxDebug.h + include/LinuxFileSystem.h + include/LinuxPlatformDefinitions.h + include/LinuxPlatformMisc.h ) set(SOURCE - src/LinuxDebug.cpp - src/LinuxFileSystem.cpp + src/LinuxDebug.cpp + src/LinuxFileSystem.cpp ) add_library(LinuxPlatform ${SOURCE} ${INCLUDE} ${PLATFORM_INTERFACE_HEADERS}) @@ -19,14 +19,14 @@ set_common_target_properties(LinuxPlatform) target_include_directories(LinuxPlatform PUBLIC - include + include ) target_link_libraries(LinuxPlatform PUBLIC - BuildSettings - BasicPlatform - PlatformInterface + BuildSettings + BasicPlatform + PlatformInterface ) source_group("src" FILES ${SOURCE}) @@ -34,5 +34,5 @@ source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${PLATFORM_INTERFACE_HEADERS}) set_target_properties(LinuxPlatform PROPERTIES - FOLDER Core/Platforms + FOLDER Core/Platforms ) diff --git a/Platforms/UWP/CMakeLists.txt b/Platforms/UWP/CMakeLists.txt index 9fe8c750..17ffc986 100644 --- a/Platforms/UWP/CMakeLists.txt +++ b/Platforms/UWP/CMakeLists.txt @@ -3,17 +3,17 @@ cmake_minimum_required (VERSION 3.8) project(UniversalWindowsPlatform CXX) set(INCLUDE - include/UWPDebug.h - include/UWPFileSystem.h - include/UWPDefinitions.h - include/pch.h - ../Win32/include/Win32Atomics.h + include/UWPDebug.h + include/UWPFileSystem.h + include/UWPDefinitions.h + include/pch.h + ../Win32/include/Win32Atomics.h ) set(SOURCE - src/UWPDebug.cpp - src/UWPFileSystem.cpp - ../Win32/src/Win32Atomics.cpp + src/UWPDebug.cpp + src/UWPFileSystem.cpp + ../Win32/src/Win32Atomics.cpp ) add_library(UniversalWindowsPlatform ${SOURCE} ${INCLUDE} ${PLATFORM_INTERFACE_HEADERS}) @@ -21,15 +21,15 @@ set_common_target_properties(UniversalWindowsPlatform) target_include_directories(UniversalWindowsPlatform PUBLIC - ../Win32/include - include + ../Win32/include + include ) target_link_libraries(UniversalWindowsPlatform PUBLIC - BuildSettings - BasicPlatform - PlatformInterface + BuildSettings + BasicPlatform + PlatformInterface ) source_group("src" FILES ${SOURCE}) @@ -37,5 +37,5 @@ source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${PLATFORM_INTERFACE_HEADERS}) set_target_properties(UniversalWindowsPlatform PROPERTIES - FOLDER Core/Platforms + FOLDER Core/Platforms ) diff --git a/Platforms/Win32/CMakeLists.txt b/Platforms/Win32/CMakeLists.txt index 67d3c2ef..08adc378 100644 --- a/Platforms/Win32/CMakeLists.txt +++ b/Platforms/Win32/CMakeLists.txt @@ -3,17 +3,17 @@ cmake_minimum_required (VERSION 3.3) project(WindowsPlatform CXX) set(INCLUDE - include/Win32Atomics.h - include/Win32Debug.h - include/Win32FileSystem.h - include/Win32PlatformDefinitions.h - include/Win32PlatformMisc.h + include/Win32Atomics.h + include/Win32Debug.h + include/Win32FileSystem.h + include/Win32PlatformDefinitions.h + include/Win32PlatformMisc.h ) set(SOURCE - src/Win32Atomics.cpp - src/Win32Debug.cpp - src/Win32FileSystem.cpp + src/Win32Atomics.cpp + src/Win32Debug.cpp + src/Win32FileSystem.cpp ) add_library(Win32Platform ${SOURCE} ${INCLUDE} ${PLATFORM_INTERFACE_HEADERS}) @@ -21,14 +21,14 @@ set_common_target_properties(Win32Platform) target_include_directories(Win32Platform PUBLIC - include + include ) target_link_libraries(Win32Platform PUBLIC - BuildSettings - BasicPlatform - PlatformInterface + BuildSettings + BasicPlatform + PlatformInterface ) source_group("src" FILES ${SOURCE}) @@ -36,5 +36,5 @@ source_group("include" FILES ${INCLUDE}) source_group("interface" FILES ${PLATFORM_INTERFACE_HEADERS}) set_target_properties(Win32Platform PROPERTIES - FOLDER Core/Platforms + FOLDER Core/Platforms ) diff --git a/Primitives/CMakeLists.txt b/Primitives/CMakeLists.txt index c8ba2714..a33be7df 100644 --- a/Primitives/CMakeLists.txt +++ b/Primitives/CMakeLists.txt @@ -3,18 +3,18 @@ cmake_minimum_required (VERSION 3.6) project(Primitives CXX) set(SOURCE - src/test.cpp + src/test.cpp ) set(INTERFACE - interface/BasicTypes.h - interface/DataBlob.h - interface/FileStream.h - interface/FormatMessage.h - interface/InterfaceID.h - interface/MemoryAllocator.h - interface/Object.h - interface/ReferenceCounters.h + interface/BasicTypes.h + interface/DataBlob.h + interface/FileStream.h + interface/FormatMessage.h + interface/InterfaceID.h + interface/MemoryAllocator.h + interface/Object.h + interface/ReferenceCounters.h ) # This should be an interface library. However, CMake does not show @@ -24,17 +24,17 @@ set_common_target_properties(Primitives) target_link_libraries(Primitives PUBLIC - BuildSettings + BuildSettings ) target_include_directories(Primitives PUBLIC - interface + interface ) source_group("interface" FILES ${INTERFACE}) source_group("src" FILES ${SOURCE}) set_target_properties(Primitives PROPERTIES - FOLDER Core + FOLDER Core ) diff --git a/Utilities/File2Include/CMakeLists.txt b/Utilities/File2Include/CMakeLists.txt index 6e873ce0..44afd89c 100644 --- a/Utilities/File2Include/CMakeLists.txt +++ b/Utilities/File2Include/CMakeLists.txt @@ -1,36 +1,36 @@ cmake_minimum_required (VERSION 3.6) if(PLATFORM_WIN32 OR PLATFORM_LINUX OR PLATFORM_MACOS) - project(File2Include) + project(File2Include) - set(SOURCE - File2String.cpp - ) + set(SOURCE + File2String.cpp + ) - add_executable(File2String ${SOURCE}) + add_executable(File2String ${SOURCE}) - if(PLATFORM_WIN32) - if(MSVC) - set(MSVC_DBG_COMPILE_OPTIONS /MTd) - set(MSVC_REL_COMPILE_OPTIONS /MT) - target_compile_options(File2String PRIVATE /wd4996) - target_compile_options(File2String PRIVATE "$<$:${MSVC_DBG_COMPILE_OPTIONS}>") - target_compile_options(File2String PRIVATE "$<$:${MSVC_REL_COMPILE_OPTIONS}>") - target_compile_options(File2String PRIVATE "$<$:${MSVC_REL_COMPILE_OPTIONS}>") - target_compile_options(File2String PRIVATE "$<$:${MSVC_REL_COMPILE_OPTIONS}>") - endif() + if(PLATFORM_WIN32) + if(MSVC) + set(MSVC_DBG_COMPILE_OPTIONS /MTd) + set(MSVC_REL_COMPILE_OPTIONS /MT) + target_compile_options(File2String PRIVATE /wd4996) + target_compile_options(File2String PRIVATE "$<$:${MSVC_DBG_COMPILE_OPTIONS}>") + target_compile_options(File2String PRIVATE "$<$:${MSVC_REL_COMPILE_OPTIONS}>") + target_compile_options(File2String PRIVATE "$<$:${MSVC_REL_COMPILE_OPTIONS}>") + target_compile_options(File2String PRIVATE "$<$:${MSVC_REL_COMPILE_OPTIONS}>") + endif() set(DST_DIR "${CMAKE_CURRENT_SOURCE_DIR}/bin/Win32/x${ARCH}/") - elseif(PLATFORM_LINUX) + elseif(PLATFORM_LINUX) set(DST_DIR "${CMAKE_CURRENT_SOURCE_DIR}/bin/Linux/") elseif(PLATFORM_MACOS) set(DST_DIR "${CMAKE_CURRENT_SOURCE_DIR}/bin/MacOS/") target_compile_features(File2String PRIVATE cxx_std_11) - endif() - source_group("source" FILES ${SOURCE}) + endif() + source_group("source" FILES ${SOURCE}) - set_target_properties(File2String PROPERTIES - FOLDER Utilities - ) + set_target_properties(File2String PROPERTIES + FOLDER Utilities + ) # When setting RUNTIME_OUTPUT_DIRECTORY_RELEASE to DST_DIR, # the executable is deleted by the clean build command @@ -44,14 +44,14 @@ if(PLATFORM_WIN32 OR PLATFORM_LINUX OR PLATFORM_MACOS) endif() if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows") - # Use prebuilt 32-bit version - set(FILE2STRING_PATH "${CMAKE_CURRENT_SOURCE_DIR}/bin/Win32/x32/File2String.exe" CACHE INTERNAL "File2String utility") + # Use prebuilt 32-bit version + set(FILE2STRING_PATH "${CMAKE_CURRENT_SOURCE_DIR}/bin/Win32/x32/File2String.exe" CACHE INTERNAL "File2String utility") elseif(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux") - # Use prebuilt version - set(FILE2STRING_PATH "${CMAKE_CURRENT_SOURCE_DIR}/bin/Linux/File2String" CACHE INTERNAL "File2String utility") + # Use prebuilt version + set(FILE2STRING_PATH "${CMAKE_CURRENT_SOURCE_DIR}/bin/Linux/File2String" CACHE INTERNAL "File2String utility") elseif(CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin") # Use prebuilt version set(FILE2STRING_PATH "${CMAKE_CURRENT_SOURCE_DIR}/bin/MacOS/File2String" CACHE INTERNAL "File2String utility") else() - set(FILE2STRING_PATH "" CACHE INTERNAL "File2String utility unavailable on this host system") + set(FILE2STRING_PATH "" CACHE INTERNAL "File2String utility unavailable on this host system") endif() -- cgit v1.2.3