diff options
author | Giacomo Pozzoni <giacomopoz@gmail.com> | 2020-05-31 12:17:26 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-31 14:17:26 +0200 |
commit | 8c09b6e58b0e4f33b7a8e376a28709e693cf2914 (patch) | |
tree | 2c4f1c0fea9adfe230e58a61fbc1cb0d168c3512 /cmake/compiler | |
parent | 0eb9b5bfe65961fb2062e71f33e3e0d8931159bb (diff) |
Cherry-pick some cmake commits (#24720)
* Build system: Support new in cmake 3.17 Ninja Multi-Config generator
(cherry picked from commit 369b618d4f160816818681ed7e41063e2d9ba5b5)
* Build system: Fixed PCH with MSVC & Ninja generator
(cherry picked from commit d669f46b6d5190dabc686a35656e8b03f5ec325b)
* Core: Fix clang 10 warnings
(cherry picked from commit 7272508cb4b51ec5591b6f0e542ea29091db7546)
# Conflicts:
# src/common/Utilities/Util.h
# src/server/bnetserver/REST/LoginRESTService.cpp
# src/server/game/Entities/Object/Position.h
# src/server/game/Entities/Player/Player.cpp
# src/server/game/Guilds/GuildFinderMgr.h
# src/server/game/Movement/Spline/MoveSplineFlag.h
# src/server/shared/Dynamic/LinkedList.h
* Build system: Set -Wno-deprecated-copy only for clang 10
(cherry picked from commit 7fdeb259ba398d5d9343a5dcd1a89562dfcbe981)
* Core/Misc: GCC build and warning fixes
(cherry picked from commit 4d69cc1c567180b408ddbadb9edf26859cf4c006)
# Conflicts:
# src/common/Utilities/Util.cpp
# src/server/database/Database/MySQLConnection.cpp
# src/server/game/Battlefield/Zones/BattlefieldTB.cpp
# src/server/game/DataStores/M2Stores.cpp
# src/server/game/DungeonFinding/LFGMgr.cpp
# src/server/game/DungeonFinding/LFGPlayerData.cpp
# src/server/game/Entities/GameObject/GameObject.cpp
# src/server/game/Entities/Item/Item.cpp
# src/server/game/Entities/Object/Updates/UpdateFields.h
# src/server/game/Entities/Player/Player.cpp
# src/server/game/Entities/Player/RestMgr.cpp
# src/server/game/Entities/Unit/Unit.cpp
# src/server/game/Handlers/PetHandler.cpp
# src/server/game/Server/Packets/GuildPackets.h
# src/server/game/Spells/Auras/SpellAuraEffects.cpp
# src/server/game/Spells/Auras/SpellAuras.cpp
# src/server/game/Spells/Spell.cpp
# src/server/game/Spells/SpellInfo.cpp
# src/server/game/Spells/SpellMgr.cpp
# src/server/scripts/Argus/AntorusTheBurningThrone/boss_garothi_worldbreaker.cpp
# src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp
# src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp
# src/server/scripts/Northrend/zone_sholazar_basin.cpp
# src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp
# src/server/scripts/Outland/GruulsLair/instance_gruuls_lair.cpp
# src/server/scripts/Outland/HellfireCitadel/BloodFurnace/instance_blood_furnace.cpp
# src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/shattered_halls.cpp
# src/tools/vmap4_extractor/gameobject_extract.cpp
# src/tools/vmap4_extractor/model.cpp
# src/tools/vmap4_extractor/vec3d.h
* Build system: Print found git version when warning about it being too old
(cherry picked from commit 1ae72db201189877c1b863fac140eb4b0a45c5bb)
* Build system: Removed hard requirement on BOOST_ROOT being set as environment variable, it can now be also passed as command line argument to cmake and fix compile warning with boost 1.73
(cherry picked from commit 161944b7643c62f9e7705c64e42d42e5d07f1959)
# Conflicts:
# dep/boost/CMakeLists.txt
* Remove some code that was already removed from 335 and then cherry-picked into master
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Diffstat (limited to 'cmake/compiler')
-rw-r--r-- | cmake/compiler/clang/settings.cmake | 9 | ||||
-rw-r--r-- | cmake/compiler/gcc/settings.cmake | 6 | ||||
-rw-r--r-- | cmake/compiler/icc/settings.cmake | 2 | ||||
-rw-r--r-- | cmake/compiler/mingw/settings.cmake | 2 | ||||
-rw-r--r-- | cmake/compiler/msvc/settings.cmake | 2 |
5 files changed, 16 insertions, 5 deletions
diff --git a/cmake/compiler/clang/settings.cmake b/cmake/compiler/clang/settings.cmake index f958d8c16ae..222271c8990 100644 --- a/cmake/compiler/clang/settings.cmake +++ b/cmake/compiler/clang/settings.cmake @@ -1,7 +1,7 @@ # Set build-directive (used in core to tell which buildtype we used) target_compile_definitions(trinity-compile-option-interface INTERFACE - -D_BUILD_DIRECTIVE="${CMAKE_BUILD_TYPE}") + -D_BUILD_DIRECTIVE="$<CONFIG>") if(WITH_WARNINGS) target_compile_options(trinity-warning-interface @@ -13,6 +13,12 @@ if(WITH_WARNINGS) -Wfatal-errors -Wno-mismatched-tags -Woverloaded-virtual) + + if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 10) + target_compile_options(trinity-warning-interface + INTERFACE + -Wno-deprecated-copy) # warning in g3d + endif() message(STATUS "Clang: All warnings enabled") endif() @@ -45,6 +51,7 @@ endif() # -Wno-narrowing needed to suppress a warning in g3d # -Wno-deprecated-register is needed to suppress 185 gsoap warnings on Unix systems. +# -Wno-deprecated-copy needed to suppress a warning in g3d target_compile_options(trinity-compile-option-interface INTERFACE -Wno-narrowing diff --git a/cmake/compiler/gcc/settings.cmake b/cmake/compiler/gcc/settings.cmake index c2fbfee0345..a0dce55019c 100644 --- a/cmake/compiler/gcc/settings.cmake +++ b/cmake/compiler/gcc/settings.cmake @@ -1,7 +1,7 @@ # Set build-directive (used in core to tell which buildtype we used) target_compile_definitions(trinity-compile-option-interface INTERFACE - -D_BUILD_DIRECTIVE="${CMAKE_BUILD_TYPE}") + -D_BUILD_DIRECTIVE="$<CONFIG>") set(GCC_EXPECTED_VERSION 7.1.0) @@ -35,6 +35,10 @@ if( WITH_WARNINGS ) -Wfatal-errors -Woverloaded-virtual) + target_compile_options(trinity-warning-interface + INTERFACE + -Wno-deprecated-copy) # warning in g3d + message(STATUS "GCC: All warnings enabled") endif() diff --git a/cmake/compiler/icc/settings.cmake b/cmake/compiler/icc/settings.cmake index 563b92d6b9b..fd591440355 100644 --- a/cmake/compiler/icc/settings.cmake +++ b/cmake/compiler/icc/settings.cmake @@ -1,6 +1,6 @@ target_compile_definitions(trinity-compile-option-interface INTERFACE - -D_BUILD_DIRECTIVE="${CMAKE_BUILD_TYPE}") + -D_BUILD_DIRECTIVE="$<CONFIG>") if(PLATFORM EQUAL 32) target_compile_options(trinity-compile-option-interface diff --git a/cmake/compiler/mingw/settings.cmake b/cmake/compiler/mingw/settings.cmake index e3c75581648..0268de93ff5 100644 --- a/cmake/compiler/mingw/settings.cmake +++ b/cmake/compiler/mingw/settings.cmake @@ -4,7 +4,7 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) # Set build-directive (used in core to tell which buildtype we used) target_compile_definitions(trinity-compile-option-interface INTERFACE - -D_BUILD_DIRECTIVE="${CMAKE_BUILD_TYPE}") + -D_BUILD_DIRECTIVE="$<CONFIG>") if(PLATFORM EQUAL 32) # Required on 32-bit systems to enable SSE2 (standard on x64) diff --git a/cmake/compiler/msvc/settings.cmake b/cmake/compiler/msvc/settings.cmake index 5ab1ca4cef0..fea0eaf8a79 100644 --- a/cmake/compiler/msvc/settings.cmake +++ b/cmake/compiler/msvc/settings.cmake @@ -59,7 +59,7 @@ else() # while all make-like generators do (nmake, ninja) target_compile_definitions(trinity-compile-option-interface INTERFACE - -D_BUILD_DIRECTIVE="${CMAKE_BUILD_TYPE}") + -D_BUILD_DIRECTIVE="$<CONFIG>") endif() # multithreaded compiling on VS |