aboutsummaryrefslogtreecommitdiff
path: root/cmake/compiler
AgeCommit message (Collapse)Author
2024-02-17Build: Improve ARM target detection in cmake (needed by MSVC)Shauren
2023-10-29Build: Fixed msvc version checkShauren
2023-08-22Build: Support ASAN on msvcShauren
2023-07-30Build/GCC: Disable useless warningShauren
2023-07-25Build: Increase required msvc version slightlyShauren
2023-07-11Build: moved MSVC warning C5054 from warning level 4 to 3Ovahlord
2023-04-10Build: Fixed copypaste mistake in appleclang version checkShauren
2023-04-10Core/Misc: Fix build with libc++Shauren
Closes #28909
2023-01-01Build: Update required compilers to current debian stable and VS 2022Shauren
GCC: 10 Clang: 11 MSVC: 2022
2022-02-16Build: Partial support for clang-clShauren
2022-02-11Build: New CMake option -DBUILD_TIME_ANALYSIS=1 for clang (enables detailed ↵Shauren
compile time statistics that can be later viewed with ClangBuildAnalyzer)
2022-02-11Build: Instantiate templates during PCH generation with clang 11+ (this ↵Shauren
should make PCH more effective in reducing compile times, closer to MSVC)
2022-02-04Common/Utilities: Centralize string -> T conversion in StringConvert.h (PR ↵Treeston
#25335) (cherry picked from commit cd30e0b86ce6ee88386a91cebdf353fc55805c57)
2022-02-04Build: Add Clang version guard to CMake (PR #25324)Treeston
(cherry picked from commit 27b1930d97d541c241655d8b820cbaebe6eec44e)
2022-02-04Build/GCC: Raise required version to 8.3.0 (#25297)Giacomo Pozzoni
Even when building with Clang, make sure to have libstdc++ >= 8 (cherry picked from commit 41d70a5905c152d26217cc152a1748c337cfd81e)
2022-01-28Build: Disable Visual Studio 2022 MSBuild resource manager to make compile ↵Shauren
take only as much time as it does in Visual Studio 2019
2022-01-26Build: Enable /permissive- flag on msvcShauren
(cherry picked from commit c8fed48b161cfff5fa90d8bf4342ede88086ada4)
2022-01-23Build: Enable -Wimplicit-fallthrough on clang (#25056)Peter Keresztes Schmidt
* Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs Related: #25006 * Misc: Add some missing breaks (no-ops) to satisfy clang Related: #25006 Closes #25055 * Build: Enable -Wimplicit-fallthrough on clang Closes #25006
2022-01-23Fix warnings related to Vector3::operator= and remove -Wno-deprecated-copy ↵Shauren
suppression (cherry picked from commit 042b1abfd747160085e5acc24a842a076b20ea01)
2022-01-21Build: Enable some msvc warnings that are enabled for other compilersShauren
2022-01-06fixed indentation for cmake filesipriver
(cherry picked from commit a46d047f9466c6f16597755bb7c771a9d1a147f2)
2022-01-04Improve multithreading of mmaps_generator (#25625)Giacomo Pozzoni
* Build/Misc: Add a few *San CMake flags Add the following flags for the related tools: - MSAN for Memory Sanitizer - UBSAN for Undefined Behavior Sanitizer - TSAN for Thread Sanitizer * Remove unused parameter * Fix UBSan reported issue * Disable G3D buffer pools when using Thread Sanitizer as it has its custom locking mechanisms * Code cleanup * Move threads from maps to tiles * Move tile building logic to TileBuilder class * Fix memory leak in TileBuilder * Fix build * Store TileBuilder as raw pointer for now, it will be changed later on to use modern C++ constructs * Fix crash on shutdown * Revert pvs-studio change * Fix generating 1 single tile not closing the program (cherry picked from commit a4e93d779c9638bc0a61cb4405ef28cb935d1065)
2021-12-22Core: build on aarch64 with gcc (#24216)daMaex
* build on aarch64 with gcc * Core/aarch64: readability on preprocessor macro * Core/aarch64: TC C++ codestyle adjustment (cherry picked from commit ce449f6b5332ab466d935de0077bccfdde716d1b)
2021-12-21Build: Enable and require c++17 (#23868)Giacomo Pozzoni
* Build: Enable and require c++17 * Build: Raise Visual Studio version from 2017 15.2 to 2017 15.9 * Build: Raise GCC version from 6.3.0 to 7.1.0 * Reduce branch differences * Fix build after latest merge * Cleanup after latest merge (cherry picked from commit 726d5e91b55d4742dcbd6b0a82d84788dbb117b7)
2021-12-18Build/Misc: Add ASan CMake flagjackpoz
Allow to enable/disable Address Sanitizer in Clang and GCC from CMake flag "ASAN" of type Boolean. It can be enabled passing -DASAN=TRUE to CMake. (cherry picked from commit 580f40769c6c446284dd1f5738f67fb3ee802956)
2021-10-01Build: Check -Wno-deprecated-copy existence using check_cxx_source_compiles ↵Shauren
instead of hardcoding clang version number
2020-05-21Core/Misc: GCC build and warning fixesShauren
2020-04-26Build system: Set -Wno-deprecated-copy only for clang 10Shauren
2020-04-26Core: Fix clang 10 warningsShauren
2020-04-16Build system: Support new in cmake 3.17 Ninja Multi-Config generatorShauren
2020-04-04Require Visual Studio 2019 16.4 or greater (#24214)Giacomo Pozzoni
* CI/AppVeyor: Add appveyor.yml file * Build: Require Visual Studio 2019 16.4 or greater * CI/AppVeyor: Upgrade to VS2019 image * Update cmake error message * CI/AppVeyor: Fix appveyor VS 2019 configuration (cherry picked from commit 1df52da0b052654a9b42339fdd22028bfdbf9fc0)
2018-03-16Build/Misc: Removed -DDEBUG from clang compile optionsShauren
2017-12-20Build: Export a default interface which doesn't hide symbols in unix ↵Naios
automatically
2017-12-20Build: Require Visual Studio 2017 or greaterNaios
* See the deprecation notice at https://community.trinitycore.org/topic/13294-gcc-49-visual-studio-2015-end-of-life/ (cherry picked from commit b9b667f9253cb5c247cf3dd195710bf764f549d6)
2017-12-20Build: Experimentally disable the /Zm workaround for MSVCNaios
(cherry picked from commit 697b4dbef20b5ceacd4c66f365b5ff71c62cb80c)
2017-12-20Build: Use interface targets for inheriting flags and definitionsNaios
* Remove the usage of global flags and definitions set through the CMAKE_CXX_FLAGS variable. * Use cmake target compile features for setting the CXX standard automatically. * Make C++14 globally available in the project * Closes #21033 (cherry picked from commit e60c1f84a7e13577a82046b02b214f9466d20a7c)
2017-12-20Build: Set the minimum required compiler version to GCC 6.3Naios
* This is the current GCC version of debian 9 (cherry picked from commit 5a9ccae3e1115d6fb1dcc287b1cb2d45779fd39b)
2017-01-02Revert "Build/Clang: Suppress -Wexpansion-to-defined because of rapidjson dep"Shauren
This reverts commit 467e49c1fa3c13d0e574bc15c80e96fa1c560958.
2016-12-30Build/Clang: Suppress -Wexpansion-to-defined because of rapidjson depDDuarte
https://travis-ci.org/TrinityCore/TrinityCore/builds/187588737#L985-L995
2016-08-18Buildsystem: Enforce Visual Studio 2015 Update 3 in CMakeShauren
2016-05-13Build/GCC: Enforce version 4.7.2Vincent-Michael
2016-04-11Core/Scripts: Split script subdirectories into independent modulesNaios
* Makes it possible to define the linkage for every module * Move the ScriptPCH into the root directory * Changes the SCRIPTS cmake variable to a string type: -> -DSCRIPTS=0 is -DSCRIPTS="minimal-static" now (builds commands and spells statically) -> -DSCRIPTS=1 is -DSCRIPTS="static" now (builds all modules statically) -> -DSCRIPTS="dynamic" (builds all modules dynamically) -> Also the default value which is provided by the SCRIPTS variable is overwriteable through the SCRIPTS_COMMANDS, SCRIPTS_SPELLS... variable.
2016-04-09oops, pushed too soon (now with proper msbuild check)Shauren
2016-04-09Buildsystem: Improved logic for _BUILD_DIRECTIVE in msvc buildsShauren
2016-04-05Buildsystem: Initial changes to support building with vs clang toolsetShauren
2016-03-24Core/Build: Enable /bigobj for most MSVC builds.Naios
* exluding 32 bit when dyynamic linking is disabled.
2016-03-24Core/Build: Add the possibility to link libraries dynamically.Naios
* makes it possible to access exported singletons from other shared lib's. * reduces binary size
2016-03-19CMake: Disable incremental linking in msvc debug buildsNaios
* Requested by Shauren (cherry picked from commit fbc23c0713e98cb16d601c64e2e3e2a7716d2ab8)
2015-12-19Revert "Build/Clang: Suppress unused-local-typedefs warning."Gacko
This reverts commit 27bb569368363546e3690474320e54266b6d8071 and 98e7ab44615af90d477b845802da04f4f6c4d6cf.
2015-11-15Build/Clang: Suppress unused-local-typedefs warning only for Clang 3.6.0+.Gacko