blender/build_files/cmake
Ray Molenkamp 75a5ea01c1 Cleanup/MSVC: Enable C++ conformance mode on compiler versions that support it.
MSVC has a conformance mode (/permissive-) where the C++ standard is more strictly
enforced. This mode is available on MSVC 15.5+ [1]

This patch enables this mode on compilers that support it and cleans up the few violations it threw up in the process.

- Mantaflow was using M_PI without requesting them using the _USE_MATH_DEFINES define to opt in to non default behaviour.
- Collada did not include the right header for std::cerr, this seemingly was fixed for other platforms already but put inside a platform guard.
- Ghost had some scoping issues regarding uninitialized variables and goto behaviour

Second landing of this patch, earlier commit was reverted due to some compiler configurations having slipped though testing

[1] https://docs.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance

Differential Revision: https://developer.blender.org/D6824

Reviewed By: brecht
2020-02-13 17:13:07 -07:00
..
config CMake: enable FFTW for headless & bpy configurations 2020-01-05 16:16:03 +11:00
example_scripts Cleanup: remove make wrapper 2019-01-24 23:25:18 +11:00
Modules USD: Install USD library via install_deps.sh 2020-02-10 15:07:56 +01:00
platform Cleanup/MSVC: Enable C++ conformance mode on compiler versions that support it. 2020-02-13 17:13:07 -07:00
buildinfo.cmake Use cmake TIMESTAMP for BUILD_DATE+TIME 2019-09-18 23:04:23 +02:00
clang_array_check.py Fix wrong glColor3usv array size check in clang array checker 2020-02-04 17:54:51 +01:00
cmake_consistency_check_config.py CMake: update cmake_consistency_check 2019-10-29 03:46:50 +11:00
cmake_consistency_check.py CMake: update cmake_consistency_check 2019-10-29 03:46:50 +11:00
cmake_netbeans_project.py Spelling fixes in comments and descriptions, patch by luzpaz 2019-07-31 14:27:35 +02:00
cmake_print_build_options.py Cleanup: move 'make help_features' into own file 2018-09-13 16:20:02 +10:00
cmake_qtcreator_project.py Cleanup: remove contributors for Python files 2019-02-05 09:17:00 +11:00
cmake_static_check_clang_array.py Cleanup: remove contributors for Python files 2019-02-05 09:17:00 +11:00
cmake_static_check_cppcheck.py Cleanup: remove contributors for Python files 2019-02-05 09:17:00 +11:00
cmake_static_check_smatch.py Cleanup: remove contributors for Python files 2019-02-05 09:17:00 +11:00
cmake_static_check_sparse.py Cleanup: remove contributors for Python files 2019-02-05 09:17:00 +11:00
cmake_static_check_splint.py Cleanup: remove contributors for Python files 2019-02-05 09:17:00 +11:00
macros.cmake BuildSystem/Cleanup: Fix warning behaviour regarding library dependencies 2020-02-07 07:27:40 -07:00
packaging.cmake Buildbot: Migrate package archive format for Linux from tar.bz2 to tar.xz 2019-11-28 11:41:25 +01:00
project_info.py Cleanup: remove contributors for Python files 2019-02-05 09:17:00 +11:00
project_source_info.py Cleanup: remove contributors for Python files 2019-02-05 09:17:00 +11:00
RpmBuild.cmake Cleanup: use 2 space indentation for CMake 2019-04-17 06:35:54 +02:00