Commit Graph
26 Commits
Author SHA1 Message Date
Shauren e0766bfc55 Build: Disable maybe-uninitialized warning for GCC that incorrectly triggers with std::optional
(cherry picked from commit d93002f9a96a01258500ca7b5f03fe27e50a7155)
2025-08-10 10:19:02 +02:00
Shauren 7daadf8e2a Build/GCC: Disable useless warning 2023-08-20 21:19:40 +02:00
Ovahlord f34534465a Build: enable C++20 and updated all compiler requirements
* ported some header and cmake updates from master branch
2023-07-04 23:49:57 +02:00
ipriver 408c386830 fixed indentation for cmake files
(cherry picked from commit a46d047f9466c6f16597755bb7c771a9d1a147f2)
(cherry picked from commit bde36062b7a0bf621086e73a5d419cd8637e9e96)
2023-05-19 22:26:00 +02:00
Shauren 78e7687a05 Fix warnings related to Vector3::operator= and remove -Wno-deprecated-copy suppression
# Conflicts:
#	cmake/compiler/clang/settings.cmake
2020-07-13 20:37:26 +02:00
Giacomo Pozzoni 9fdf598792 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)

* 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)

* 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)

* Remove some code that was already removed from 335 and then cherry-picked into master

Co-authored-by: Shauren <shauren.trinity@gmail.com>
(cherry picked from commit 8c09b6e58b0e4f33b7a8e376a28709e693cf2914)
2020-06-11 20:24:00 +02:00
Giacomo Pozzoni c2913e608f Build: Enable and require c++17 2020-03-16 14:14:46 +01:00
ariel- 5ff847159c Core: header cleanup, split realmlist, boost compatibility, cotire, remove stormlib/zlib and stormlib/bzip2 and instead use dep sources 2018-03-28 04:41:59 -03:00
Aokromes 19fa11cfa6 Increase gcc and clang to c++14 2018-03-08 23:55:48 +01:00
Aokromes 9078085595 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-08-10 05:14:53 +02:00
Vincent-Michael d9f17a6c22 Build/GCC: Enforce version 4.7.2
(cherry picked from commit ede8f0ca0a28d059c1356c6970ac87f53c72a424)
2016-07-20 11:00:26 +02:00
Aokromes 9cf3bdf125 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-07-15 20:35:32 +02:00
jackpoz a3e56b0689 Core/Dependencies: Upgrade to jemalloc-3.5.1 2014-03-28 22:34:39 +01:00
Shauren 3affa3a824 Buildsystem/GCC: Enforce version 4.7.2 and enable c++11 compilation 2014-03-23 20:35:30 +01: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
click 8ef48ecc99 Core/Buildsystem: Clean up compileflags when compiling with warnings fully 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-27 00:43:38 +01:00
Spp 333b8e5159 Core/Build: Enable Clang PCH support and OS X specific features
Core: Fix warnings here and there
2012-11-09 13:13:45 +01:00
click 6afaed4a02 Core: Remove the MersenneTwiser-library (SFMT is now considered stable enough for full deployment) 2012-03-27 02:27:12 +02:00
leak 4c9cfa6739 Core/Buildsystem: Resolved quoting problem that caused gcc to spam warnings. Patch by click.
--HG--
branch : trunk
2010-12-20 02:23:55 +01:00
click 62b853e8ed BuildSystem: Fix missing variable parameter encapsulation for _BUILD_DIRECTIVE (gcc/xcode)
--HG--
branch : trunk
2010-09-30 13:04:46 +02:00
click b87d8f4700 Buildsystem: Overhaul of the CMake buildsystem:
- utilize CMake for completely generating revision.h (kills off genrev and revision.h targets):
  - pull and set correct revision-ID/hash from Mercurial (hg) when using regular repository sourcetree
  - pull and set correct revision-ID/hash from archived releases (when pulled from googlecode)
  - set and use _BUILD_DIRECTIVE definition (earlier part of revision.h) as compiletime definition
- delete genrev and related buildsystems
  (now deprecated)
- Move some files around to adhere to buildsystem structure
Thanks to Shauren for figuring out the definition-behaviour for MSVC while he was in the shower

--HG--
branch : trunk
rename : cmake_uninstall.cmake.in => cmake/platform/unix/cmake_uninstall.in.cmake
2010-09-29 23:42:09 +02:00
click f69c252f1d Buildsystem/Compilers: Adjust buildfiles slightly:
- Set SSE2 compile-flags only when used on 32-bit platforms (only used on x86 platforms, as x64 / Itanium has this as a standard)
- Clean up/merge some of the 64-bit/32-bit compiler options
- Clean up use of the PLATFORM variable (now sets PLATFORM 32 or PLATFORM 64, shaving off the CMAKE_SIZEOF_VOID_P test slightly)

--HG--
branch : trunk
2010-09-20 20:58:57 +02:00
click 58dafd94e2 BuildSystem/Platforms: Move platform-specific settings into respective directories, consistent with what is done with compilers.
BuildSystem/GCC: Add some additional parameters when using SFMT

--HG--
branch : trunk
2010-09-19 18:17:53 +02:00
click 3fa20f4cf3 Buildsystem: Make options load BEFORE platformchecks, so they are preloaded correctly
+ add some more output to make it easier to find possible issues with the new layout

--HG--
branch : trunk
2010-08-28 21:42:07 +02:00
click dcaeceaf6b Buildsystem: Change over to a little more flexible method of using the CMake buildsystem (partially WIP) - REQUIRES RERUNNING CMAKE!
For finding out the "standard" parameters examine the cmake/options.cmake file and adjacent files for your platform/compiler.
For platform settings -> cmake/platform/*/settings.cmake
For compiler settings -> cmake/compiler/*/settings.cmake
Some more testing and changes IS required, but I don't have OSX/XCode to kill off the main issues

--HG--
branch : trunk
rename : cmake/FindPlatform.cmake => cmake/macros/CheckPlatform.cmake
rename : cmake/FindACE.cmake => cmake/macros/FindACE.cmake
rename : cmake/FindMySQL.cmake => cmake/macros/FindMySQL.cmake
rename : cmake/FindOpenSSL.cmake => cmake/macros/FindOpenSSL.cmake
rename : cmake/FindPCHSupport.cmake => cmake/macros/FindPCHSupport.cmake
rename : cmake/FindReadline.cmake => cmake/macros/FindReadline.cmake
rename : cmake/cmake_uninstall.cmake.in => cmake_uninstall.cmake.in
2010-08-28 18:49:17 +02:00