From 8b1794456d68cb57080f4e6814f9e39ffd4f9b37 Mon Sep 17 00:00:00 2001 From: Michael Vance Date: Fri, 15 Apr 2016 12:57:58 -0400 Subject: [PATCH] Switch RENDERDOC_PLATFORM to RENDERDOC_PLATFORM_. Notes ====== - With no clean way to do string comparisons in the C preprocessor, have a define per-platform. This avoids the clever string concatenation for determining the OS-specic bits, and allows SN-DBS to distribute builds without custom rewrite rules. - Fix up instances of WIN32, etc., in non-3rdparty sources to refer to this. - Move the per-platform specific bits into their own subdirs. --- CMakeLists.txt | 2 ++ renderdoc/CMakeLists.txt | 1 - renderdoc/api/app/renderdoc_app.h | 4 ++-- renderdoc/api/replay/renderdoc_replay.h | 4 ++-- renderdoc/common/globalconfig.h | 2 +- renderdoc/core/replay_proxy.cpp | 2 +- renderdoc/driver/d3d11/renderdoc_d3d11.vcxproj | 8 ++++---- renderdoc/driver/dxgi/renderdoc_dxgi.vcxproj | 8 ++++---- renderdoc/driver/gl/gl_common.h | 4 ++-- renderdoc/driver/gl/renderdoc_gl.vcxproj | 8 ++++---- renderdoc/driver/shaders/dxbc/renderdoc_dxbc.vcxproj | 8 ++++---- renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj | 8 ++++---- renderdoc/driver/vulkan/renderdoc_vulkan.vcxproj | 8 ++++---- renderdoc/driver/vulkan/vk_dispatchtables.h | 2 +- renderdoc/driver/vulkan/vk_replay.h | 4 ++-- renderdoc/driver/vulkan/vk_tracelayer.cpp | 4 ++-- renderdoc/hooks/hooks.h | 2 +- renderdoc/os/{ => linux}/linux_specific.h | 0 renderdoc/os/os_specific.h | 7 ++++--- renderdoc/os/{ => win32}/win32_specific.h | 0 renderdoc/renderdoc.vcxproj | 8 ++++---- renderdoccmd/renderdoccmd.cpp | 4 ++-- renderdoccmd/renderdoccmd.vcxproj | 8 ++++---- 23 files changed, 54 insertions(+), 52 deletions(-) rename renderdoc/os/{ => linux}/linux_specific.h (100%) rename renderdoc/os/{ => win32}/win32_specific.h (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index b41f33aa8..5c63a6b35 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -41,6 +41,8 @@ if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${warning_flags}") endif() +add_definitions(-DRENDERDOC_PLATFORM_LINUX) + add_subdirectory(renderdoc) if(ENABLE_RENDERDOCCMD) diff --git a/renderdoc/CMakeLists.txt b/renderdoc/CMakeLists.txt index f8f5b6af8..bfb335066 100644 --- a/renderdoc/CMakeLists.txt +++ b/renderdoc/CMakeLists.txt @@ -25,7 +25,6 @@ if(UNIX) set(XCB_LIBRARIES xcb xcb-keysyms) list(APPEND RDOC_DEFINITIONS - PUBLIC -DRENDERDOC_PLATFORM=linux PRIVATE -DLINUX) list(APPEND RDOC_INCLUDES diff --git a/renderdoc/api/app/renderdoc_app.h b/renderdoc/api/app/renderdoc_app.h index 67c179ad0..2abe6d35f 100644 --- a/renderdoc/api/app/renderdoc_app.h +++ b/renderdoc/api/app/renderdoc_app.h @@ -28,9 +28,9 @@ #include #endif -#if defined(WIN32) +#if defined(RENDERDOC_PLATFORM_WIN32) #define RENDERDOC_CC __cdecl -#elif defined(__linux__) +#elif defined(RENDERDOC_PLATFORM_LINUX) #define RENDERDOC_CC #else #error "Unknown platform" diff --git a/renderdoc/api/replay/renderdoc_replay.h b/renderdoc/api/replay/renderdoc_replay.h index b04832b57..e1d6ed7c7 100644 --- a/renderdoc/api/replay/renderdoc_replay.h +++ b/renderdoc/api/replay/renderdoc_replay.h @@ -31,7 +31,7 @@ typedef uint8_t byte; typedef uint32_t bool32; -#ifdef WIN32 +#if defined(RENDERDOC_PLATFORM_WIN32) #ifdef RENDERDOC_EXPORTS #define RENDERDOC_API __declspec(dllexport) @@ -40,7 +40,7 @@ typedef uint32_t bool32; #endif #define RENDERDOC_CC __cdecl -#elif defined(__linux__) +#elif defined(RENDERDOC_PLATFORM_LINUX) #ifdef RENDERDOC_EXPORTS #define RENDERDOC_API __attribute__ ((visibility ("default"))) diff --git a/renderdoc/common/globalconfig.h b/renderdoc/common/globalconfig.h index dd6da35a3..4a331593f 100644 --- a/renderdoc/common/globalconfig.h +++ b/renderdoc/common/globalconfig.h @@ -69,7 +69,7 @@ enum // whether to include file and line on log lines #define INCLUDE_LOCATION_IN_LOG -#if !defined(WIN32) +#if !defined(RENDERDOC_PLATFORM_WIN32) // logs go to stdout/stderr #define OUTPUT_LOG_TO_STDOUT //#define OUTPUT_LOG_TO_STDERR diff --git a/renderdoc/core/replay_proxy.cpp b/renderdoc/core/replay_proxy.cpp index d7dada013..8b8b01164 100644 --- a/renderdoc/core/replay_proxy.cpp +++ b/renderdoc/core/replay_proxy.cpp @@ -36,7 +36,7 @@ // Win32 to try and hide less padding with the larger alignment requirement // of 8-byte pointers. -#if defined(WIN32) && defined(RDC64BIT) +#if defined(RENDERDOC_PLATFORM_WIN32) && defined(RDC64BIT) template class oversized { int check[int(actual)-int(expected)+1]; }; template class undersized { int check[int(expected)-int(actual)+1]; }; diff --git a/renderdoc/driver/d3d11/renderdoc_d3d11.vcxproj b/renderdoc/driver/d3d11/renderdoc_d3d11.vcxproj index 6e2738e0f..4afe04e3c 100644 --- a/renderdoc/driver/d3d11/renderdoc_d3d11.vcxproj +++ b/renderdoc/driver/d3d11/renderdoc_d3d11.vcxproj @@ -105,7 +105,7 @@ Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ MultiThreadedDLL true @@ -123,7 +123,7 @@ NotUsing Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -144,7 +144,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -167,7 +167,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL diff --git a/renderdoc/driver/dxgi/renderdoc_dxgi.vcxproj b/renderdoc/driver/dxgi/renderdoc_dxgi.vcxproj index b29c9d142..28f1e791d 100644 --- a/renderdoc/driver/dxgi/renderdoc_dxgi.vcxproj +++ b/renderdoc/driver/dxgi/renderdoc_dxgi.vcxproj @@ -105,7 +105,7 @@ Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ MultiThreadedDLL true @@ -123,7 +123,7 @@ NotUsing Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -144,7 +144,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -167,7 +167,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL diff --git a/renderdoc/driver/gl/gl_common.h b/renderdoc/driver/gl/gl_common.h index 80c107605..9352aa2d7 100644 --- a/renderdoc/driver/gl/gl_common.h +++ b/renderdoc/driver/gl/gl_common.h @@ -34,7 +34,7 @@ #include "official/glcorearb.h" #include "official/glext.h" -#if defined(WIN32) +#if defined(RENDERDOC_PLATFORM_WIN32) #include "official/wglext.h" struct GLWindowingData @@ -47,7 +47,7 @@ struct GLWindowingData HWND wnd; }; -#elif defined(LINUX) +#elif defined(RENDERDOC_PLATFORM_LINUX) // cheeky way to prevent GL/gl.h from being included, as we want to use // glcorearb.h from above #define __gl_h_ diff --git a/renderdoc/driver/gl/renderdoc_gl.vcxproj b/renderdoc/driver/gl/renderdoc_gl.vcxproj index 143f570e9..8fbdc0260 100644 --- a/renderdoc/driver/gl/renderdoc_gl.vcxproj +++ b/renderdoc/driver/gl/renderdoc_gl.vcxproj @@ -161,7 +161,7 @@ Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ MultiThreadedDLL true @@ -179,7 +179,7 @@ NotUsing Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -200,7 +200,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -223,7 +223,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL diff --git a/renderdoc/driver/shaders/dxbc/renderdoc_dxbc.vcxproj b/renderdoc/driver/shaders/dxbc/renderdoc_dxbc.vcxproj index c1608b0d8..6351d4ca1 100644 --- a/renderdoc/driver/shaders/dxbc/renderdoc_dxbc.vcxproj +++ b/renderdoc/driver/shaders/dxbc/renderdoc_dxbc.vcxproj @@ -117,7 +117,7 @@ Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ MultiThreadedDLL true @@ -135,7 +135,7 @@ NotUsing Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -156,7 +156,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -179,7 +179,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL diff --git a/renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj b/renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj index aa07f37c1..67abb634a 100644 --- a/renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj +++ b/renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj @@ -246,7 +246,7 @@ Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;GLSLANG_OSINCLUDE_WIN32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;GLSLANG_OSINCLUDE_WIN32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ MultiThreadedDLL true @@ -264,7 +264,7 @@ NotUsing Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;GLSLANG_OSINCLUDE_WIN32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;GLSLANG_OSINCLUDE_WIN32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -285,7 +285,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;GLSLANG_OSINCLUDE_WIN32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;GLSLANG_OSINCLUDE_WIN32;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -308,7 +308,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;GLSLANG_OSINCLUDE_WIN32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;GLSLANG_OSINCLUDE_WIN32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL diff --git a/renderdoc/driver/vulkan/renderdoc_vulkan.vcxproj b/renderdoc/driver/vulkan/renderdoc_vulkan.vcxproj index 4720fe86b..3f9e91b8d 100644 --- a/renderdoc/driver/vulkan/renderdoc_vulkan.vcxproj +++ b/renderdoc/driver/vulkan/renderdoc_vulkan.vcxproj @@ -144,7 +144,7 @@ Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;VK_USE_PLATFORM_WIN32_KHR;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;VK_USE_PLATFORM_WIN32_KHR;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ MultiThreadedDLL true @@ -162,7 +162,7 @@ NotUsing Level4 Disabled - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;VK_USE_PLATFORM_WIN32_KHR;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;VK_USE_PLATFORM_WIN32_KHR;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -183,7 +183,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;VK_USE_PLATFORM_WIN32_KHR;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;VK_USE_PLATFORM_WIN32_KHR;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL @@ -206,7 +206,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;VK_USE_PLATFORM_WIN32_KHR;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;VK_USE_PLATFORM_WIN32_KHR;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) $(SolutionDir)renderdoc\;$(SolutionDir)renderdoc\3rdparty\ false MultiThreadedDLL diff --git a/renderdoc/driver/vulkan/vk_dispatchtables.h b/renderdoc/driver/vulkan/vk_dispatchtables.h index 2c81dde14..fd5758082 100644 --- a/renderdoc/driver/vulkan/vk_dispatchtables.h +++ b/renderdoc/driver/vulkan/vk_dispatchtables.h @@ -26,7 +26,7 @@ // layer includes -#ifdef WIN32 +#if defined(RENDERDOC_PLATFORM_WIN32) // undefined clashing windows #defines #undef CreateEvent #undef CreateSemaphore diff --git a/renderdoc/driver/vulkan/vk_replay.h b/renderdoc/driver/vulkan/vk_replay.h index 43894d4f6..bab2ada89 100644 --- a/renderdoc/driver/vulkan/vk_replay.h +++ b/renderdoc/driver/vulkan/vk_replay.h @@ -30,13 +30,13 @@ #include "replay/replay_driver.h" #include "core/core.h" -#if defined(WIN32) +#if defined(RENDERDOC_PLATFORM_WIN32) #include #define WINDOW_HANDLE_DECL HWND wnd; #define NULL_WND_HANDLE NULL -#elif defined(__linux__) +#elif defined(RENDERDOC_PLATFORM_LINUX) #include #define WINDOW_HANDLE_DECL xcb_connection_t *connection; xcb_screen_t *screen; xcb_window_t wnd; diff --git a/renderdoc/driver/vulkan/vk_tracelayer.cpp b/renderdoc/driver/vulkan/vk_tracelayer.cpp index bfdc39edb..9453d5851 100644 --- a/renderdoc/driver/vulkan/vk_tracelayer.cpp +++ b/renderdoc/driver/vulkan/vk_tracelayer.cpp @@ -42,7 +42,7 @@ #include "os/os_specific.h" // this should be in the vulkan definition header -#ifdef WIN32 +#if defined(RENDERDOC_PLATFORM_WIN32) #undef VK_LAYER_EXPORT #define VK_LAYER_EXPORT extern "C" __declspec(dllexport) #endif @@ -165,7 +165,7 @@ VkResult getProps(uint32_t *dstCount, void *dstProps, uint32_t srcCount, void *s return VK_SUCCESS; } -#if defined(WIN32) && !defined(WIN64) +#if defined(RENDERDOC_PLATFORM_WIN32) && !defined(RDC64BIT) // Win32 __stdcall will still mangle even with extern "C", set up aliases diff --git a/renderdoc/hooks/hooks.h b/renderdoc/hooks/hooks.h index b43c453c2..6eab4fd87 100644 --- a/renderdoc/hooks/hooks.h +++ b/renderdoc/hooks/hooks.h @@ -34,7 +34,7 @@ using std::map; // include os-specific hooking mechanisms here -#if defined(WIN32) +#if defined(RENDERDOC_PLATFORM_WIN32) #include "os/win32/win32_hook.h" diff --git a/renderdoc/os/linux_specific.h b/renderdoc/os/linux/linux_specific.h similarity index 100% rename from renderdoc/os/linux_specific.h rename to renderdoc/os/linux/linux_specific.h diff --git a/renderdoc/os/os_specific.h b/renderdoc/os/os_specific.h index 1be88e3a4..a6bc324b7 100644 --- a/renderdoc/os/os_specific.h +++ b/renderdoc/os/os_specific.h @@ -328,9 +328,10 @@ namespace Bits // GetEmbeddedResource(name_with_underscores_ext) - function/inline that returns the given file in a std::string // OS_DEBUG_BREAK() - instruction that debugbreaks the debugger - define instead of function to preserve callstacks -#ifdef RENDERDOC_PLATFORM -// "win32_specific.h" (in directory os/) -#include STRINGIZE(CONCAT(RENDERDOC_PLATFORM,_specific.h)) +#if defined(RENDERDOC_PLATFORM_WIN32) +#include "win32/win32_specific.h" +#elif defined(RENDERDOC_PLATFORM_LINUX) +#include "linux/linux_specific.h" #else #error Undefined Platform! #endif diff --git a/renderdoc/os/win32_specific.h b/renderdoc/os/win32/win32_specific.h similarity index 100% rename from renderdoc/os/win32_specific.h rename to renderdoc/os/win32/win32_specific.h diff --git a/renderdoc/renderdoc.vcxproj b/renderdoc/renderdoc.vcxproj index 990821b1a..c5ea875ef 100644 --- a/renderdoc/renderdoc.vcxproj +++ b/renderdoc/renderdoc.vcxproj @@ -106,7 +106,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;USE_BREAKPAD;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;USE_BREAKPAD;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) /wd4100 /wd4512 @@ -135,7 +135,7 @@ MaxSpeed true true - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;USE_BREAKPAD;WIN64;WIN32;RELEASE;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) /wd4100 /wd4512 @@ -163,7 +163,7 @@ Disabled false false - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) /wd4100 /wd4512 @@ -195,7 +195,7 @@ Disabled false false - RENDERDOC_EXPORTS;RENDERDOC_PLATFORM=win32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + RENDERDOC_EXPORTS;RENDERDOC_PLATFORM_WIN32;WIN64;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) /wd4100 /wd4512 diff --git a/renderdoccmd/renderdoccmd.cpp b/renderdoccmd/renderdoccmd.cpp index b8ada568d..229ca4bb6 100644 --- a/renderdoccmd/renderdoccmd.cpp +++ b/renderdoccmd/renderdoccmd.cpp @@ -238,7 +238,7 @@ int renderdoccmd(int argc, char **argv) fprintf(stderr, "Not enough parameters to --replay"); } } -#ifdef WIN32 +#if defined(RENDERDOC_PLATFORM_WIN32) // if we were given an executable on windows, inject into it // can't do this on other platforms as there's no nice extension // and we don't want to just launch any single parameter in case it's @@ -370,7 +370,7 @@ int renderdoccmd(int argc, char **argv) fprintf(stderr, "renderdoccmd usage:\n\n"); fprintf(stderr, " Launch a preview window that replays this logfile and\n"); fprintf(stderr, " displays the backbuffer.\n"); -#ifdef WIN32 +#if defined(RENDERDOC_PLATFORM_WIN32) fprintf(stderr, " Launch a capture of this program with default options.\n"); #endif fprintf(stderr, "\n"); diff --git a/renderdoccmd/renderdoccmd.vcxproj b/renderdoccmd/renderdoccmd.vcxproj index bcb074b4a..32a3895eb 100644 --- a/renderdoccmd/renderdoccmd.vcxproj +++ b/renderdoccmd/renderdoccmd.vcxproj @@ -92,7 +92,7 @@ Level3 Disabled - WIN32;_CRT_SECURE_NO_WARNINGS;RENDERDOC_PLATFORM=win32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + WIN32;_CRT_SECURE_NO_WARNINGS;RENDERDOC_PLATFORM_WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) $(SolutionDir)renderdocshim\;$(SolutionDir)renderdoc\api\;$(SolutionDir)renderdoc\3rdparty\ MultiThreadedDLL true @@ -109,7 +109,7 @@ Level3 Disabled - WIN32;_CRT_SECURE_NO_WARNINGS;WIN64;RENDERDOC_PLATFORM=win32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + WIN32;_CRT_SECURE_NO_WARNINGS;WIN64;RENDERDOC_PLATFORM_WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) $(SolutionDir)renderdocshim\;$(SolutionDir)renderdoc\api\;$(SolutionDir)renderdoc\3rdparty\ MultiThreadedDLL true @@ -128,7 +128,7 @@ MaxSpeed true true - WIN32;_CRT_SECURE_NO_WARNINGS;RENDERDOC_PLATFORM=win32;NDEBUG;RELEASE;_CONSOLE;%(PreprocessorDefinitions) + WIN32;_CRT_SECURE_NO_WARNINGS;RENDERDOC_PLATFORM_WIN32;NDEBUG;RELEASE;_CONSOLE;%(PreprocessorDefinitions) $(SolutionDir)renderdocshim\;$(SolutionDir)renderdoc\api\;$(SolutionDir)renderdoc\3rdparty\ true @@ -148,7 +148,7 @@ MaxSpeed true true - WIN32;_CRT_SECURE_NO_WARNINGS;WIN64;RENDERDOC_PLATFORM=win32;NDEBUG;RELEASE;_CONSOLE;%(PreprocessorDefinitions) + WIN32;_CRT_SECURE_NO_WARNINGS;WIN64;RENDERDOC_PLATFORM_WIN32;NDEBUG;RELEASE;_CONSOLE;%(PreprocessorDefinitions) $(SolutionDir)renderdocshim\;$(SolutionDir)renderdoc\api\;$(SolutionDir)renderdoc\3rdparty\ true