aboutsummaryrefslogtreecommitdiff
path: root/cmake/compiler/clang
AgeCommit message (Collapse)Author
2025-05-11Build: Remove -fpch-instantiate-templates detection, it is enabled by ↵Shauren
default since CMake 3.19 (cherry picked from commit 55a19f15d01b5f06c158f1dfbd2c43e4f5d6837c)
2024-11-28Build: Disable -Wmissing-field-initializers for clang, it now mirrors ↵Shauren
unwanted gcc behavior since version 18 (cherry picked from commit 93c8993314cde7f45f1b0be32152a318aee51999)
2024-07-18Build: CMake cleanupShauren
* Migrate all add_definitions to target_compile_definitions * Remove -D from preprocessor definitions added by target_compile_definitions (unneccessary, cmake strips it anyway) * Fixed NO_BUFFERPOOL not being set on g3d if jemalloc is used * Moved library/compiler specific compile flag settings spread all over various CMakeLists to their related library/compiler file * Remove ancient manual link flag settings for worldserver (cherry picked from commit 77fe2745febab9e4362b09750093d831325e6091)
2024-06-20Build: Unify setting _BUILD_DIRECTIVE preprocessor macro for all compilersShauren
(cherry picked from commit 078bc6fe3fc764eaa2d528a19fe6d40972ee3537)
2024-02-28Core/Misc: Allow formatting optionals with Trinity::StringFormatShauren
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-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-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-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-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-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
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: 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-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-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-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
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
2015-11-15Build/Clang: Suppress unused-local-typedefs warning.Gacko
2015-07-03Buildsystem/Clang: Suppress warningjackpoz
Suppress -Wmismatched-tags warnings on clang to avoid false positive warnings reported using gcc 4.8 (cherry picked from commit 879af88d2180ca0655fda87072308f6eb76e70ca)
2015-05-10CMake OS X: Fixed Debug Mode for XcodeJared Jones
On newer versions of Xcode, the preprocessor macro #DEBUG is not defined by default. In order to set the debug flag it has to be set manually. If this does not happen then in the "Common.h" file the preprocessor will assume that we are building under a release mode instead of the debug mode. Ref: ad0cc83c842231fedd1eb9afe962176c17dc72ff
2014-10-29cmake: use CMAKE_BUILD_TYPE instead of CONFIGURATION as BUILD_DIRECTIVEBernd Lörwald
2014-07-23Core/Misc: Silenced 500 OS X Warnings and removed deprecated finite() method.Jared P. Jones
*Mac OS X fires off over 200 warnings related to gsoap about the deprecated register method. CMake has been patched to remove this warning. *Updated all occurences of finite() to std::isfinite. The method finite() is not standardized by anyone aside from BSD. std::isfinite() however is standarized by C++ *Removed -ncurses and -pthread from OS X compilation. Now that we use Boost and C++11 there is no longer a need for pthread in OS X. All it does is throw a warning. However, ncurses isn't needed either as it's built into the OS X SDK and linked by default. Note: There are only 5 remaining warnings left when compiling on OS X. I did not attempt to fix these as they were related to 3rd party libraries statically linked into the code. The 5 warnings left are all related to unused variables.
2014-03-25Build system: Fix clang buildGacko
See wiki for latest build instructions under Mac OS X!
2013-01-29Buildsystem/CMake: Revoke commit 7b49da48f9c3c21406fbe350de170757ea6e285f - ↵click
it creates unwanted results when used with PCh on *nix platforms.
2013-01-29Buildsystem/CMake: Change policy CMP0005 to NEW and corect some ↵click
buildvariables accordingly ** Info from CMake: ** The OLD behavior for this policy is to place definition values given to add_definitions directly in the generated build rules without attempting to escape anything. ** The NEW behavior for this policy is to generate correct escapes for all native build tools automatically. If this breaks build, let us know on irc : irc.rizon.net/#trinity
2012-11-27Core/Buildsystem: Clean up compileflags when compiling with warnings fully ↵click
enabled. -Wwrite-strings is default enabled when -Wall is set in clang/gcc, hence removed. -Woverloaded-virtual is now enabled for C++-code only, this removes the useless warnings when dabbling with C-only code.
2012-11-09Core/Build: Enable Clang PCH support and OS X specific featuresSpp
Core: Fix warnings here and there