Commit Graph

223 Commits

Author SHA1 Message Date
Aokromes
9790cb5762 Update FindBoost.cmake 2016-07-08 01:11:37 +02:00
Aokromes
e3de0ef531 Update options.cmake 2016-07-06 18:17:06 +02:00
Naios
50146b2229 Build: Throw a fatal error when the SCRIPTS variable isn't a valid option.
* Catches issues early that are caused through a wrong configuration.

(cherry picked from commit 2b97b32d81)
2016-06-23 22:25:55 +02:00
Vincent-Michael
0ab6ecbdc6 Build/GCC: Enforce version 4.7.2
(cherry picked from commit ede8f0ca0a)
2016-05-14 18:40:22 +02:00
Vincent-Michael
f1468ff4b9 Build: Added 1.61 Boost version to FindBoost
(cherry picked from commit e43b871137)
2016-05-14 18:40:22 +02:00
Naios
42eeb28a8b Core/Scripting: Disallow the build directory to contain spaces
* I wasn't able to work arround a path which contains spaces,
  since it seems like a CMake specific issue.
* Closes #16947
2016-04-14 20:31:04 +02:00
Naios
81cee23775 Core/Build: Workarround for different path handling in CMake < 3.2
* Closes #16951
2016-04-12 23:08:27 +02:00
Naios
8660f90bdf Core/Scripts: Split script subdirectories into independent modules
* 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.

(cherry picked from commit 848b8a4136)
2016-04-11 21:41:58 +02:00
Shauren
43fb6b2209 Buildsystem: Improved logic for _BUILD_DIRECTIVE in msvc builds
(cherry picked from commit 509a27fd51)
2016-04-09 12:39:03 +02:00
Shauren
702cfefddb Buildsystem: Initial changes to support building with vs clang toolset
(cherry picked from commit 4a3a178d7f)
2016-04-09 12:38:20 +02:00
Shauren
6a8e926584 Travis: Fixed git version info output
(cherry picked from commit 03917c79cd)
2016-04-09 12:36:46 +02:00
Naios
77aa9ae01d Core/Build: Enable /bigobj for most MSVC builds.
* exluding 32 bit when dyynamic linking is disabled.

(cherry picked from commit 183f970055)
2016-03-24 02:45:14 +01:00
Naios
2613413608 Core/Build: Add the possibility to link libraries dynamically.
* makes it possible to access exported singletons from other shared lib's.
* reduces binary size

(cherry picked from commit f4e0945b13)
2016-03-24 02:38:54 +01:00
Naios
174efd0b6b CMake: Fix detection of AppleClang
* Since CMake 3.0 CMAKE_<LANG>_COMPILER_ID is set to "AppleClang"
2016-03-18 14:28:03 +01:00
Naios
fbc23c0713 CMake: Disable incremental linking in msvc debug builds
* Requested by Shauren
2016-03-18 14:28:01 +01:00
Naios
bf773ccc41 CMake: Remove the workaround for source groups below CMake 2.8.12
* Set the default option to hierarchical
* Add a new "hierarchical-folders" option which enables folders inside IDE's.
2016-03-18 14:28:01 +01:00
Naios
abda7a910a CMake: Use inherited dependencies in common and tools 2016-03-18 02:52:57 +01:00
Naios
2413a82b93 CMake: Add inherited include directories and definitions to precompiled headers 2016-03-18 02:52:55 +01:00
Naios
1a572d2425 CMake: Provide proper interface targets from dependencies
* to make use of cmakes inherited link dependencies which
  imports all include directories/ definitions from the link library
2016-03-18 02:52:54 +01:00
Naios
a974574d6e CMake: Add the possibility to pass an arbitrary count of targets to add_cxx_pch.
* A PCH is still generated for every target which was passed to the macro
* Resolves naming conflicts when using the same PCH header from multiple projects
* Ref #15671
2016-02-22 16:25:54 +01:00
Bernd Lörwald
b53b81d8a6 cmake: use CMAKE_BUILD_TYPE instead of CONFIGURATION as BUILD_DIRECTIVE
(cherry picked from commit 06391e5e9d)
2016-02-21 21:55:50 -03:00
Aokromes
6861deaae2 Build/Misc: Clarify the meaning of one setting 2016-01-05 13:11:27 +01:00
Rushor
923a368ac7 Update copyright note for 2016 2016-01-01 12:02:33 +01:00
Vincent-Michael
347373264b Build: Added 1.60 Boost version to FindBoost 2015-12-25 17:09:39 +01:00
Shauren
11b3a60900 Buildsystem: Fixed building on windows 10 with cmake 3.4
(cherry picked from commit b5fbf773a5)
2015-11-12 17:55:04 +01:00
Shauren
1de03cf107 Core/Players: Implemented serverside validation of reserved/profane names
Closes #15357

New library dependency: Boost.Regex

(cherry picked from commit b564c10b13)
2015-10-31 17:27:45 +01:00
Naios
5736deb854 Core/Build: Never overwrite the msvc cxx flags in the cache
* Setting all compiler flags in the cache led to circular bloating of
  msvc cxx parameters (was visible in console) which caused MSVC to
  rebuild the whole solution even on a small CMake change.
  It's not neccessary anyway to set the cxx parameters to the cache
  to take effect.
* I'm not sure if the workarround is still needed for MSVC 12+.
* Cleaning the CMake cache is recommended!
* ref #15671

(cherry picked from commit 0946fcf2aa)
2015-10-29 18:56:24 +01:00
Shauren
12f5c766c9 Buildsystem/MSVC: Added missed change
(cherry picked from commit 7732ad5153)
2015-09-27 12:24:11 +02:00
Shauren
eac6f22c95 Buildsystem/MSVC: Enabled /Zc:throwingNew for Visual Studio 2015 builds
More info here: http://blogs.msdn.com/b/vcblog/archive/2015/08/06/new-in-vs-2015-zc-throwingnew.aspx

Closes #15230

(cherry picked from commit dcb1990e93)
2015-09-27 12:23:56 +02:00
StormBytePP
94f69fb1bc Core/Build: Removed obsolete SystemConfig.h and made genrev be part of shared library, which allows cache hits to happen more likely 2015-08-16 17:15:38 +02:00
DDuarte
fa6a83b270 Build: Add 1.59 Boost version to FindBoost 2015-08-15 17:54:18 +01:00
jackpoz
ca940548bf Buildsystem: Fix Boost not found targeting VS2015 with pre-built binaries
Fix Boost libraries not being found by CMake when targeting Visual Studio 2015 with Boost installed using the binaries.
Fixes #15277
2015-08-14 20:23:34 +02:00
DDuarte
bc4baa4e05 Build/CMake: Partially revert recent changes to FindMySQL.cmake
Looking for folders like ".../MySQL/*/include" matches the MySQL Connector C libs which caused some problems.
Related #15072, #15068

P.S ".../MySQL/MySQL Server*/include" doesn't work

(cherry picked from commit e2fb3bbd46)
2015-07-27 01:13:38 +01:00
Shauren
f03f5cc1f2 Buildsystem/MSVC: Enabled /bigobj for all x64 build types
(cherry picked from commit 52127197ec)
2015-07-25 16:42:46 +01:00
Shauren
b4adf3f5dd Core/Misc: Fixing warnings detected by Visual Studio 2015 compiler
(cherry picked from commit a22e4e121a)

Conflicts:
	cmake/compiler/msvc/settings.cmake
	src/server/game/DataStores/DBCStores.cpp
	src/server/game/Entities/GameObject/GameObject.cpp
	src/server/game/Entities/Object/Object.cpp
	src/server/game/Entities/Object/Object.h
	src/server/game/Entities/Pet/Pet.cpp
	src/server/game/Entities/Player/Player.cpp
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Garrison/Garrison.cpp
	src/server/game/Garrison/GarrisonMgr.cpp
	src/server/game/Globals/ObjectMgr.cpp
	src/server/game/Globals/ObjectMgr.h
	src/server/game/Guilds/GuildMgr.cpp
	src/server/game/Handlers/CharacterHandler.cpp
	src/server/game/Handlers/QueryHandler.cpp
	src/server/game/Handlers/QuestHandler.cpp
	src/server/game/Handlers/SpellHandler.cpp
	src/server/game/Server/Packets/ChannelPackets.h
	src/server/game/Server/Packets/PartyPackets.cpp
	src/server/game/Server/WorldSession.h
	src/server/game/Spells/Spell.cpp
	src/server/game/Spells/SpellInfo.cpp
	src/server/game/Spells/SpellScript.cpp
	src/server/scripts/Commands/cs_list.cpp
2015-07-24 11:51:48 +01:00
DDuarte
57091cc5f1 CRLF to LF
Seriously....
2015-07-10 20:16:55 +01:00
jackpoz
879af88d21 Buildsystem/Clang: Suppress warning
Suppress -Wmismatched-tags warnings on clang to avoid false positive warnings reported using gcc 4.8
2015-06-29 22:29:28 +02:00
DDuarte
1b2a67a1b5 Build/CMake: Fix finding MySQL install
(cherry picked from commit d4deb17a2f)
2015-06-29 14:09:48 +01:00
Duarte Duarte
a8d8976e2c Merge pull request #14723 from TrinityCore/findmysql-update
Update FindMySQL.cmake
(cherry picked from commit fb4a9823c4)
2015-06-26 00:52:52 +01:00
jackpoz
60a29f7614 Core/Misc: Add valgrind support for jemalloc
Set CMake option VALGRIND to add valgrind support to jemalloc. Set CMake parameter VALGRIND_INCLUDE_DIR to the valgrind include directory.
2015-06-20 23:01:53 +02:00
jackpoz
d78eae1eaf Core/Misc: Disable G3D buffer pools if jemalloc is enabled 2015-06-08 20:49:54 +02:00
Shauren
79dd72ae70 Buildsystem: Removed handling for -DPREFIX shortcut for -DCMAKE_INSTALL_PREFIX cmake option, it an internal cmake variable since version 3.2
(cherry picked from commit 1987d3187d)
2015-06-01 00:35:02 +01:00
Duarte Duarte
90e2b7266b Merge pull request #14674 from jaredjones/patch-1
CMake OS X: Fixed Debug Mode for Xcode
(cherry picked from commit b96e70af71)
2015-05-19 19:29:01 +01:00
Shauren
2268f07a5f Buildsystem: Updated FindBoost macro, now finds versions 1.57 and 1.58 as well
(cherry picked from commit 5acc4b14aa)

Conflicts:
	cmake/macros/FindBoost.cmake

Signed-off-by: Naios <naios-dev@live.de>
2015-04-27 16:45:18 +02:00
leak
3761d24119 Core/CMake: Fix line endings 2015-04-21 13:26:30 +02:00
Daniel M. Weeks
84ab4fcd5f Fix indentation in unix cmake settings
(cherry picked from commit 71ba35a6cd)
2015-04-15 19:29:37 +02:00
Naios
c386711972 CMake: Use source_groups to represent the source tree
* It let ide's (like vs) display the source tree.
* Disabled by default.
* Soft requirement is cmake >= 2.8.12 .
* Offers 2 modes: flat & hierarchical.
* For detailed description see #14471
* Thanks @click for help and advises.
* Closes #14471
2015-03-29 16:08:28 +02:00
Naios
2bd1c8541d Core/Updates: Add an automatic database update system. Automatically detects new and edited sql updates through file lists and hashing. Detects renames, deletes and is able to create and auto import full databases. * cleanups in main.cpp of world & bnetserver * refactoring in DatabaseWorkerPool.h & MySQLConnection.cpp
Make sure you re-run cmake, because boost::iostreams was added as dependency.
Maybe you need to install libboost-iostreams1.55-dev on unix as well.

Import every update manual until (included) those INSERT IGNORE updates for each database.

Thanks DDuarte and Shauren for your amazing ideas, help and advises.

In hope that nobody gets a "Your database structure is not up to date..." anymore ,-)

(cherry picked from commit 352012e531)
(cherry picked from commit 1f7f9feafc)

For 3.3.5:
* Synchronized ConfigureBoost.cmake with 6.x, libboost-filesystem1.55-dev also added as dependency!

Signed-off-by: Naios <naios-dev@live.de>
Signed-off-by: Nayd <dnpd.dd@gmail.com>
2015-03-21 20:54:54 +00:00
Guillaume Belz
fb55b9bb85 FindOpenSSL: fix detection of OpenSSL 1.0.2
Closes #14284

(cherry picked from commit 9ffeb58d09)
2015-03-15 13:11:46 +00:00
leak
46863b3afa CMake: Allow specifying the mysql location by environment variable. 2015-03-01 14:27:20 +01:00