Commit Graph

74 Commits

Author SHA1 Message Date
Shauren
b0609757d3 Build/Misc: Removed -DDEBUG from clang compile options 2018-03-16 21:13:09 +01:00
Naios
db5d5a03be Build: Export a default interface which doesn't hide symbols in unix automatically 2017-12-20 04:04:28 +01:00
Naios
891960edbe 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/

(cherry picked from commit b9b667f925)
2017-12-20 04:04:28 +01:00
Naios
edafb45b79 Build: Experimentally disable the /Zm workaround for MSVC
(cherry picked from commit 697b4dbef2)
2017-12-20 04:04:27 +01:00
Naios
ff35262a3a 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

(cherry picked from commit e60c1f84a7)
2017-12-20 04:04:27 +01:00
Naios
af7352118b Build: Set the minimum required compiler version to GCC 6.3
* This is the current GCC version of debian 9

(cherry picked from commit 5a9ccae3e1)
2017-12-20 04:04:27 +01:00
Shauren
a6d29d4058 Revert "Build/Clang: Suppress -Wexpansion-to-defined because of rapidjson dep"
This reverts commit 467e49c1fa.
2017-01-02 17:16:15 +01:00
DDuarte
467e49c1fa Build/Clang: Suppress -Wexpansion-to-defined because of rapidjson dep
https://travis-ci.org/TrinityCore/TrinityCore/builds/187588737#L985-L995
2016-12-30 02:15:40 +00:00
Shauren
650ab693a8 Buildsystem: Enforce Visual Studio 2015 Update 3 in CMake 2016-08-18 17:45:49 +02:00
Vincent-Michael
ede8f0ca0a Build/GCC: Enforce version 4.7.2 2016-05-13 18:06:00 +02:00
Naios
848b8a4136 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.
2016-04-11 21:13:58 +02:00
Shauren
3ebec1e2ce oops, pushed too soon (now with proper msbuild check) 2016-04-09 00:40:43 +02:00
Shauren
509a27fd51 Buildsystem: Improved logic for _BUILD_DIRECTIVE in msvc builds 2016-04-09 00:37:41 +02:00
Shauren
4a3a178d7f Buildsystem: Initial changes to support building with vs clang toolset 2016-04-05 22:43:41 +02:00
Naios
183f970055 Core/Build: Enable /bigobj for most MSVC builds.
* exluding 32 bit when dyynamic linking is disabled.
2016-03-24 01:28:56 +01:00
Naios
f4e0945b13 Core/Build: Add the possibility to link libraries dynamically.
* makes it possible to access exported singletons from other shared lib's.
* reduces binary size
2016-03-24 01:28:55 +01:00
Naios
6eba8493e2 CMake: Disable incremental linking in msvc debug builds
* Requested by Shauren

(cherry picked from commit fbc23c0713)
2016-03-19 23:19:57 +01:00
Gacko
4eae523e32 Revert "Build/Clang: Suppress unused-local-typedefs warning."
This reverts commit 27bb569368 and 98e7ab4461.
2015-12-19 13:03:21 +01:00
Gacko
98e7ab4461 Build/Clang: Suppress unused-local-typedefs warning only for Clang 3.6.0+. 2015-11-15 18:54:32 +01:00
Gacko
27bb569368 Build/Clang: Suppress unused-local-typedefs warning. 2015-11-15 18:28:25 +01:00
Naios
0946fcf2aa 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
2015-10-17 13:11:49 +02:00
Shauren
7732ad5153 Buildsystem/MSVC: Added missed change 2015-08-07 09:29:28 +02:00
Shauren
dcb1990e93 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
2015-08-07 00:12:41 +02:00
Shauren
52127197ec Buildsystem/MSVC: Enabled /bigobj for all x64 build types 2015-07-24 19:21:31 +02:00
Shauren
a22e4e121a Core/Misc: Fixing warnings detected by Visual Studio 2015 compiler 2015-07-21 00:33:36 +02:00
jackpoz
6b30fbc238 Buildsystem/Clang: Suppress warning
Suppress -Wmismatched-tags warnings on clang to avoid false positive warnings reported using gcc 4.8

(cherry picked from commit 879af88d21)
2015-07-03 01:08:10 +01:00
Jared Jones
af99d0a597 CMake OS X: Fixed Debug Mode for Xcode
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: ad0cc83c84
2015-05-10 01:46:23 -05:00
Shauren
b7f254db3d Buildsystem/MSVC: Disabled C4351: new behavior: elements of array 'x' will be default initialized for all builds, even when using WITH_WARNINGS 2015-01-06 14:25:23 +01:00
Duarte Duarte
cd0372ce7b CMake: Fix typo in MSVC_EXPECTED_VERSION
Thanks @Aridev

Closes #13820
2014-12-30 16:50:30 +00:00
Nayd
56a665ccf3 CMake: Require VS 2013 Update 3
Update 4 (includes 3) can be downloaded at http://www.microsoft.com/en-us/download/details.aspx?id=44921

Closes #13813
2014-12-29 20:55:53 +00:00
Nayd
702f774a49 CMake: Ignore MSVC warning C4351
new behavior: elements of array 'array' will be default initialized

"If you want the new behavior, which is likely, because the array was explicitly added to the constructor's member initialization list, use the warning pragma to disable the warning. The new behavior should be fine for most users."
2014-12-28 21:22:57 +00:00
Bernd Lörwald
06391e5e9d cmake: use CMAKE_BUILD_TYPE instead of CONFIGURATION as BUILD_DIRECTIVE 2014-10-29 23:59:28 +01:00
Shauren
48b7e0c60c Buildsystem/MSVC: Removed /SAFESEH linker option from x86 debug builds as it doesn't make sense in debug builds and interferes with Edit and Continue
Closes #13233
2014-09-28 12:03:34 +02:00
Jared P. Jones
11ecd851a1 Core/Misc: Silenced 500 OS X Warnings and removed deprecated finite() method.
*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-07-23 17:30:45 -05:00
Shauren
99dd35da14 Buildsystem/MSVC: Disable C4512 warning 2014-07-19 13:31:17 +02:00
leak
e0aed65c8c ACE cleanup on game, now the major issue remains WorldSocket 2014-07-02 02:20:53 +02:00
jackpoz
a3e56b0689 Core/Dependencies: Upgrade to jemalloc-3.5.1 2014-03-28 22:34:39 +01:00
Gacko
ef1bb6290a Build system: Fix clang build
See wiki for latest build instructions under Mac OS X!
2014-03-25 21:22:49 +01:00
Shauren
f357597ec1 Buildsystem: Changed required CMake version to 2.8.9 and removed a check for version we no longer support in msvc settings 2014-03-25 16:40:22 +01:00
Vincent-Michael
b4dec55b96 Cmake: Added level restriction for msvc 2013 2014-03-24 15:54:40 +01:00
Shauren
3affa3a824 Buildsystem/GCC: Enforce version 4.7.2 and enable c++11 compilation 2014-03-23 20:35:30 +01:00
Nay
1b0c604848 Revert "CMake/MSVC: Fix VS 2013 compile -- Zm500 hack is no longer required"
This reverts commit ca7377369f.
2013-07-30 13:50:29 +01:00
Nay
ca7377369f CMake/MSVC: Fix VS 2013 compile -- Zm500 hack is no longer required
Signed-off-by: Nay <dnpd.dd@gmail.com>
2013-07-19 01:13:26 +01:00
Nay
c33a198f62 Cmake: Fix typo in msvc/settings.cmake 2013-05-19 17:04:57 +02:00
click
612ead5094 Buildsystem/MSVC: Fix a minor issue with /Zm heap allocation parameters not being used 32-bit environment 2013-05-18 10:24:04 +02:00
Nay
c7463c5f6c Buildsystem: Add support for compiling with MinGW on Windows
Tested with:
- Windows 8 x64
- MySQL 5.5.30 win32
- OpenSSL 1.0.1c (32 bits)
- No PCH
- MinGW with GCC 4.7.0

TODO:
- Fix compile/link with PCH enabled
- Fix compile with WheatyExceptonionReport enabled (ignored for now)
- Fix compile of .rc files (ignored for now)
- Test with more platforms
2013-03-09 00:12:50 +00:00
click
ea9c6524dd Buildsystem/CMake: Revoke commit 7b49da48f9 - it creates unwanted results when used with PCh on *nix platforms. 2013-01-29 23:18:25 +01:00
click
7b49da48f9 Buildsystem/CMake: Change policy CMP0005 to NEW and corect some 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
2013-01-29 15:53:21 +01:00
Shauren
4186c3cef7 Buildsystem/MSVC: Enable and treat as errors compilation warning about not matching virtual function signatures. This will help scripters who might sometimes use a hook using improper parameters (or miss 'const' for example) 2012-12-31 14:10:22 +01:00
click
b609b314b2 CMake/Buildsystem: CMake adds /Zm1000 to MSVC by default - explicitly replace that in the flaglist with the lower boundary 2012-12-31 12:09:22 +01:00