Skip to content

Fix compiler detection being used as platform detection.#189

Open
WSWhitehouse wants to merge 1 commit intobombomby:masterfrom
WSWhitehouse:bugfix/platform-detection
Open

Fix compiler detection being used as platform detection.#189
WSWhitehouse wants to merge 1 commit intobombomby:masterfrom
WSWhitehouse:bugfix/platform-detection

Conversation

@WSWhitehouse
Copy link

Currently, the compiler is being used to detect the target platform. The MSVC compiler forced a Windows platform, and Clang/GCC was used for OSX, Linux and ARM. Compiling with Clang on Windows was impossible as it would not detect the correct platform.

My pull request separates platform and compiler detection to make them independent of each other. The Windows platform is now detected based on the presence of WIN32 (and its counterparts) rather than the MSVC compiler. This method also detects 32 and 64 bit Windows, unlike before which always assumed 64 bit. The addition of the OPTICK_WINDOWS macro should be used instead of OPTICK_MSVC wherever the Windows platform is wanted instead of the compiler. The compiler detection has been separated from the platform detection which defines OPTICK_MSVC or OPTICK_GCC (the same macros as before) depending on the compiler.

I have gone through the codebase changing out any uses of OPTICK_MSVC that refer to the Windows platform to OPTICK_WINDOWS.

I have successfully tested building the D3D12 and Vulkan samples on my Windows machine with MSVC. And have compiled a DLL using Clang on Windows.

…TICK_WINDOWS` and checking for windows defines instead. Updated use of `OPTICK_MSVC` for windows platform throughout codebase.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant