Shauren
aba07047a0
Build: Fixed finding OpenSSL 1.1.1 installed from .msi packages instead of .exe
...
Closes #24664
2020-09-09 13:44:46 +02:00
Kargatum
277b401df4
Core/Mysql: support MariaDB 10.5 ( #25359 )
2020-08-30 22:47:48 +02:00
Treeston
cd30e0b86c
Common/Utilities: Centralize string -> T conversion in StringConvert.h (PR #25335 )
2020-08-26 23:31:45 +02:00
Treeston
27b1930d97
Build: Add Clang version guard to CMake (PR #25324 )
2020-08-24 17:44:38 +02:00
Giacomo Pozzoni
41d70a5905
Build/GCC: Raise required version to 8.3.0 ( #25297 )
...
Even when building with Clang, make sure to have libstdc++ >= 8
2020-08-21 13:51:29 +02:00
Shauren
c8fed48b16
Build: Enable /permissive- flag on msvc
2020-08-04 15:50:31 +02:00
Giacomo Pozzoni
36ef487a90
Core/Metric: Add new cmake option WITH_DETAILED_METRICS to enable more metrics ( #25136 )
...
* Core/Metric: Add new cmake option WITH_DETAILED_METRICS to enable more metrics
Add more detailed metrics in World::UpdateSessions().
* Attempt using C++17 features
* Fix cmake typo
Co-authored-by: NoName <322016+Faq@users.noreply.github.com >
* Fix build with WITHOUT_METRICS
* Update Performance profiling dashboard with Update sessions panel
* Add panel to show sessions with update time above 100 ms
* Move legends on the right and add max update time diff in the legend of sessions
Co-authored-by: NoName <322016+Faq@users.noreply.github.com >
2020-07-27 14:00:28 +02:00
Carbenium
796e2b32e0
Build: Add WITH_LD_GOLD option to use gold linker on unix
...
gold is an ELF-only linker which has a better performance
than the default ld.
2020-07-25 18:00:20 +02:00
Carbenium
6a28ee7b2a
dep: Add catch2 unit test framework and wire it up
...
To enable the test suite, make sure to configure CMake with -DBUILD_TESTING=1 , since it is disabled by default. The catch2 dependency will be downloaded during configure time.
Also add a new target "tests-common", which includes unit tests for the "common" project. To finally run the tests use the "test" target.
CircleCI: Run unit tests
2020-07-24 12:00:54 +02:00
Giacomo Pozzoni
3c0ac7302f
Core/Metric: Add more metrics about World::Update() loop ( #25098 )
...
* Core/Metric: Add more metrics about World::Update() loop
* Add new Performance profiling grafana dashboard
* Add new cmake setting WITHOUT_METRICS that disables all metrics
As new metrics are added, someone might want to disable them if unused.
* Add more metrics about World::Update() loop
* Remove old performance profiling features
Remove "server set difftime" command, "-RecordUpdateTimeDiffInterval" and "MinRecordUpdateTimeDiff" worldserver config settings and their related code.
The whole UpdateTime class could be removed too.
* Update and rename 2020_07_99_99_world.sql to 2020_07_24_00_world.sql
2020-07-24 00:30:16 +02:00
Peter Keresztes Schmidt
e6e5775be8
Build: Enable -Wimplicit-fallthrough on clang ( #25056 )
...
* 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
2020-07-18 20:43:16 +02:00
Shauren
524d167398
Dep: Switch to boost process instead of old standalone version
2020-07-15 19:33:12 +02:00
Shauren
042b1abfd7
Fix warnings related to Vector3::operator= and remove -Wno-deprecated-copy suppression
2020-07-13 18:35:13 +02:00
ipriver
a46d047f94
fixed indentation for cmake files
2020-06-24 14:42:02 +02:00
ipriver
dc467ee0f6
Additional cmake entry for configs
...
Closes #24812
Co-authored-by: Carbenium <carbenium@outlook.com >
2020-06-19 15:06:03 +02:00
Max Drosdo.www
60e813df6b
removed legacy cmake libsdir entry ( #24813 )
2020-06-16 14:22:46 +02:00
Peter Keresztes Schmidt
cb5694607d
CP of CMake: Prepare for target_precompile_headers ( #24810 ) for 3.3.5 ( #24816 )
...
* CMake: Remove guards around CMP0043 and CMP0054
We require CMake >= 3.8 which includes the policies.
CMP0043 OLD behaviour is still required by cotire.
(cherry picked from commit 18ad767226 )
* CMake: Use target_precompile_headers instead of cotire with CMake >= 3.16.0
(cherry picked from commit f387673aa3 )
2020-06-16 13:38:37 +02:00
Giacomo Pozzoni
8c09b6e58b
Cherry-pick some cmake commits ( #24720 )
...
* Build system: Support new in cmake 3.17 Ninja Multi-Config generator
(cherry picked from commit 369b618d4f )
* Build system: Fixed PCH with MSVC & Ninja generator
(cherry picked from commit d669f46b6d )
* Core: Fix clang 10 warnings
(cherry picked from commit 7272508cb4 )
# 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 7fdeb259ba )
* Core/Misc: GCC build and warning fixes
(cherry picked from commit 4d69cc1c56 )
# 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 1ae72db201 )
* 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 161944b764 )
# 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 >
2020-05-31 14:17:26 +02:00
Giacomo Pozzoni
7c91c423d0
Build: Add support to MariaDB 10.4 on Windows
...
MariaDB 10.4 (latest stable) is the only supported version.
2020-04-24 19:35:40 +02:00
Aokromes
0fa366cbda
Misc: Deprecate mysql 5.6
2020-04-10 18:08:18 +02:00
Shauren
2a2867cdc0
Build: Delete FindBoost.cmake and rely on the one that ships with cmake instead
...
(cherry picked from commit e5b12a76dc )
# Conflicts:
# cmake/macros/FindBoost.cmake
2020-04-05 15:14:28 +02:00
Giacomo Pozzoni
1df52da0b0
Require Visual Studio 2019 16.4 or greater ( #24214 )
...
* 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
2020-04-03 21:14:09 +02:00
daMaex
ce449f6b53
Core: build on aarch64 with gcc ( #24216 )
...
* build on aarch64 with gcc
* Core/aarch64: readability on preprocessor macro
* Core/aarch64: TC C++ codestyle adjustment
2020-03-01 20:16:57 +01:00
Giacomo Pozzoni
726d5e91b5
Build: Enable and require c++17 ( #23868 )
...
* 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
2020-02-08 18:14:09 +01:00
Aokromes
ed93932537
New year
...
Say bye bye to every year changing dates
2020-01-02 06:25:50 +01:00
vincent-michael
5c0aa2f2bd
Build: Updated Find Boost versions
2019-12-20 19:58:35 +01:00
Shauren
5f06c476f6
Core/DBLayer: Support using mysql 8
...
(cherry picked from commit c3a9d56b56 )
2019-11-09 13:49:27 +01:00
jackpoz
580f40769c
Build/Misc: Add ASan CMake flag
...
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.
2019-10-19 20:12:48 +02:00
jackpoz
3d3b7f438c
Buildsystem: Fix finding VS 2019 compiled boost libs
2019-04-19 22:37:50 +02:00
Shauren
12852ddb30
Build/Misc: Removed -DDEBUG from clang compile options
...
(cherry picked from commit b0609757d3 )
2019-01-18 19:58:02 +01:00
Treeston
fcfcb0eb6f
Happy New Year, folks. It's 2019!
2019-01-01 15:45:25 +01:00
Aokromes
33c723685f
Misc: Deprecate any mysql under 5.6
...
Mysql 5.5 is deprecated on few hours.
5.5 December 3, 2010; 8 years ago[50] 5.5.61 2018-07-27 December 2018
https://en.wikipedia.org/wiki/MySQL#Release_history
closes #22874
2018-12-31 18:11:29 +01:00
vincent-michael
234e1166d7
Build: Added Boost version 1.68 to FindBoost
2018-10-04 18:28:13 +02:00
Aokromes
6f39c71903
Cmake: Update outdated string
2018-09-12 10:56:58 +02:00
vincent-michael
f3833b426d
Build: Added Boost version 1.67 to FindBoost
...
https://www.boost.org/users/history/version_1_67_0.html
2018-04-15 12:36:37 +02:00
Shauren
1dd44207bd
Buildsystem: Fixed finding openssl 1.1 libs
...
(cherry picked from commit 413cf257cd )
2018-03-20 17:55:22 +01:00
Shauren
ddd60a948c
Buildsystem: Separate strict database type checks from TRINITY_DEBUG/WITH_COREDEBUG option
2018-03-14 20:50:54 +01:00
Warlockbugs
efef6b5e36
Core/Crypto: Transitional Cryptography update for OpenSSL 1.1 ( #21533 )
...
Support for both OpenSSL 1.0 LTS and OpenSSL 1.1 versions.
Many Linux distributions are still on 1.0 and will stay on LTS for quite
some time.
Port of CMaNGOS commit: e1b0048f05
2018-03-04 15:53:41 +01:00
jackpoz
db5c9867e2
Core/Misc: Add PERFORMANCE_PROFILING CMake option
...
Add a new CMake option called PERFORMANCE_PROFILING that should be used only when profiling the performance.
This option is unsupported, do not report any issue happening when enabling this option.
2018-02-17 23:29:34 +01:00
tkrokli
f6b6f57a6d
Update copyright note for 2018
...
Best wishes for the new year.
2018-01-01 01:55:29 +01:00
Naios
d3d003d69e
Build: Re-enable the /Zm workaround for MSVC (cotire version)
...
* Thanks Spec for reporting this issue
* See https://community.trinitycore.org/topic/120-compile-or-cmake-problems/?do=findComment&comment=83912
* Ref 697b4dbef2
2017-12-23 02:14:05 +01:00
Naios
9d0400211d
Build: Export a default interface which doesn't hide symbols in unix automatically
...
(cherry picked from commit db5d5a03be )
2017-12-21 23:31:11 +01:00
ariel-
b1ad5df1ee
Build: fixed finding Boost 1.66 named libraries... somewhat
2017-12-21 03:24:08 -03:00
ariel-
d8faa089e4
Build: fix typo in FindBoost
2017-12-21 03:05:23 -03:00
ariel-
42cc93b940
Build/Misc: added Boost 1.66 to FindBoost.cmake
2017-12-21 02:46:47 -03:00
Naios
b9b667f925
Build: Require Visual Studio 2017 or greater
...
* See the deprecation notice at
https://community.trinitycore.org/topic/13294-gcc-49-visual-studio-2015-end-of-life/
2017-12-17 20:22:34 +01:00
Naios
697b4dbef2
Build: Experimentally disable the /Zm workaround for MSVC
2017-12-17 20:22:34 +01:00
Naios
92f96fc10e
Build: Use the cotire library for precompiled header handling
...
* Required for handling flags inherited by linked projects
correctly in the corresponding precompiled header.
* Reduces the maintenance effort for precompiled headers
2017-12-17 20:22:34 +01:00
Naios
e60c1f84a7
Build: Use interface targets for inheriting flags and definitions
...
* 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
2017-12-17 20:22:33 +01:00
Naios
5a9ccae3e1
Build: Set the minimum required compiler version to GCC 6.3
...
* This is the current GCC version of debian 9
2017-12-17 20:22:33 +01:00