26 Commits

Author SHA1 Message Date
schnek
5ead53a1ed Fix SRC_TBC_SHADOWLABYRINTH_SCRIPTS_FILES (not added) (#1110)
* Fix SRC_TBC_SHADOWLABYRINTH_SCRIPTS_FILES (not added)

fix Installing ./libmysql.lib
Delete USE_PCH_INCLUDES
Revert unset()
language version must be global 😉

* Update CheckSystem.cmake
2023-07-08 15:14:06 +02:00
schnek
296b3f03cd Cleanup/Refactor of CMake - enabled #include
Slight Cleanup/Refactor of CMake Setup
Fix error: invalid argument '-std=c++2a' not allowed with 'C'
Fix https://github.com/AscEmu/AscEmu/issues/1108
Fix github build
2023-05-30 09:34:26 +03:00
schnek
8ac4b4b110 rework cmake - removed old implementation where files were included in manual "mode" 2023-04-22 17:27:42 +03:00
Appled
36e7f93db5 Welcome to 2023 2023-01-02 17:56:56 +02:00
schnek
74c1a3f118 AscemuServerDefines.hpp - removed for files with #define... there are special files
Removed special code on banner for various platforms
Added new #define... AE_PLATFORM, AE_ARCHITECTURE (platform, architecture - defined in cmake
Common.hpp.in - add only values for all architectures... to the file (without "else")
changed codestyle in console (+ now you can use help in different registers (Help, help, ?)
add config.yml - added official links
2022-06-20 19:16:37 +03:00
schnek
2f20549fb5 The functionality provided by cotire has been superseded by features added to CMake 3.16. 2022-05-11 21:44:46 +03:00
schnek
fdd11eb71e start rework cmake
msvc.cmake & gcc.cmake & clang.cmake - add check for compiler version
new modules from AscEmu (AE) should be marked for indexing
2022-03-27 20:30:06 +03:00
Zyres
37e07a56f1 Squashed commit of the following:
commit a2fbfae1aba33780d8f67c1a922b2a737d007a80
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 07:24:51 2022 +0100

    Update build-test.yml

commit fbab33ab201522db1d1dd1e4d16ce3836dd5f09d
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 07:06:26 2022 +0100

    Update config.yml

commit a79bf0b428df16791f7d5ddb4d6cddd8a0c67cdc
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 06:57:34 2022 +0100

    Update config.yml

commit 2cc0dba5fd7a03f6ebef029a8262a79c33efd800
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 06:52:11 2022 +0100

    Update config.yml

commit 097f988c8fe4fc9f2e31dd876d31748d097712d8
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 06:50:56 2022 +0100

    7

commit 0eed49b872400cc76c4f0c82b12511f6470a9eb5
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 06:14:44 2022 +0100

    Update gcc.cmake

commit a464edae59676e5d68ad960399c68ad5157238f2
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 06:13:27 2022 +0100

    Update gcc.cmake

commit 3512fec5d57919acc5a603941be174f6931fa60f
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 06:06:30 2022 +0100

    Update build-test.yml

commit beb5571998a2db414a3f6aafef80a7db1b5547a7
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 06:01:30 2022 +0100

    Update gcc.cmake

commit 715fe81e6ff0f0184923a17e8851f67831536f12
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 05:59:22 2022 +0100

    Update build-test.yml

commit aceb37b7ac0d0852facdf68b13fa4d47f9592100
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 05:54:23 2022 +0100

    Update build-test.yml

commit d48388ecfc9a5faa3772447fe84dfa9f84c19d7a
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 05:51:04 2022 +0100

    3

commit eba89e76c0d8b7cf602a6545c8627febdbc3fd77
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 05:46:05 2022 +0100

    2

commit 3671796b9760c0f80d60416851bd35c758d35233
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 05:43:09 2022 +0100

    stuff

commit 9510ca77a951c269f8d0e52c4c308d0b9c84e646
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 05:34:11 2022 +0100

    Update build-test.yml

commit 1ce6ba2d987335a316172264598d12b0478b3e35
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 05:26:23 2022 +0100

    Update build-test.yml

commit 0438bb96e86a4af81fa13333196e64968745b529
Author: Zyres <mr@eichbuehlerhof.de>
Date:   Sun Mar 6 05:23:29 2022 +0100

    Update build-test.yml
2022-03-06 07:25:12 +01:00
Appled
e30342d4e3 Welcome to 2022 2022-01-02 04:23:11 +02:00
schnek
1c0512543f Do Place spaces between control statements and their parentheses. (#950)
* Do Place spaces between control statements and their parentheses.

* Update FindPCRE.cmake (register)

* Update FindOpenSSL.cmake (tabs)
2021-11-04 19:50:22 +01:00
Zyres
5deaddab4e Remove LogonStdAfx.h
Change pch function and remove cotire
2021-07-05 21:34:00 +02:00
Zyres
ad84bd156c Find MySQL files in "Progman Files (x86)" folder if AE is set to Win32
NOTE: You need mysql x86 files if you want to build AE with Win32
2021-01-24 11:19:35 +01:00
Zyres
36a60d7159 Remove delivered mysql source 2021-01-23 12:42:59 +01:00
Appled
ac727cb0d5 Welcome to 2021 2021-01-01 18:25:13 +00:00
schnek
86b72a2261 Welcome to 2020 2020-01-10 00:18:07 +03:00
Zyres
f5cdebd615 Replace old pch solution with cotire. (dep/cotire)
world, scripts and logon will now use pch with gcc, clang and msvc.
This should reduce the massive build times on travis. (Reference travis build # 4472 - https://travis-ci.org/AscEmu/AscEmu/builds/549168133)
Msvc compiler heap limit is now set by cotire.
Thanks to Naios at this point.

CreatureAIScript.cpp
- std::random_shuffle was marked as deprecated in c++14 and removed in c++17
2019-06-22 21:59:11 +02:00
Andrius Peleckas
4a5c94dc3c Improved x64 bit system detection
Cmake oftenly fails to detect Win64 prefix. This will give more occurate result
2019-06-01 13:05:30 +03:00
schnek
2a4d9637a8 It is 2019. Update Copyright note. 2019-01-08 20:49:57 +01:00
schnek
e2f94759fb AscEmu++
update of copyright 2k18
2018-01-21 23:07:11 +03:00
Zyres
071242e766 Pre-configure configuration files based on cmake options.
E.g. max level, game build version is now auto filled by cmake in the .conf files.

NOTE: do not configure these files by hand. The output will appear after CMake has generated the files in "your source dir"/configs
Close #425 (the line endings should now be correct since we generate these files during CMake configuration.
2017-03-17 05:02:52 +01:00
schnek
6596e1b0ca Update copyright notice. 2017-02-03 23:04:36 +03:00
Zyres
65a1cbf69a Add preprocessor define if cmake option USE_PCH is not set, otherwhise comment it in WorldConf.h 2017-01-23 21:25:06 +01:00
Lectro
b48fecb23c Another optimization:
* Removed world config option BackgroundLootLoading
        Worldserver actually just overloads cpu by loading this in background...

    * Use std::cout instead of printf in Log functions.
        Actually its not issue to use printf but std::cout is thread/type safe in c++

    * Added missing data cleanups in objectmgr destructor

    * Small performance tweak for SysInfo::GetTickCount. Function will use 64 bit based function on 64 bit build

    * Build Lua library only if BUILD_LUAENGINE is checked

    * Do not build tools for coverity (temporally to reduce compile time (2-4 mins)

    * Disabled os x build generally in travis. Linux test is enough for this

    * Updated UNIX compilers version checks. Try to detect c++11 compatibility instead of direct version check (version check sometimes fails in unix systems)

    * Travis rewritten again to use container based build system. Also forced to gcc again because seems clang still issues with headers when building for coverity analysis

    * Added missing header for mmaps extractor

    * Fixed many cmake issues

    * Added missing change for clang in libmpq library

    * Fixed many memory leaks detected by cppcheck and coverity

    * Removed Field.cpp, Lfg.cpp sources from "world" project

    * Cleaned up StdAfx.h (world project)

    * Fixed wrong headers

    * Removed cmake preprocessor definition for X64 bit build. Project will use predefined compiler macro instead

    * Removed dublicate headers from Common.h

    * Corrected Corpse* ObjectMgr::LoadCorpse(uint32 guid)
        - Fixed misstake made in pervious commit
        - This function actually must return only 1 corpse which is already loaded, in this case function does not need any loops

    * Many corrections in ObjectMgr

    * Fixed couple possible crashes

    * Fixed crash in SOTA
2016-03-09 14:59:00 +02:00
Lectro
3986e038f5 OS X build fix and small optimization for cmake, code
Changes:

* Fixed OS X build
* Splitted worldserver and world projects for OS X build
* Cmake will pass definitions to cmake configuration files for world and
logon projects (to reduce definitions counts in linker)
* Added missing and fixed old include guards
* Added OS X build to travis (to disable just comment osx line in "os"
section in travis)
* Removed tr1 namespace calls - used functions in tr1 namespace are
already handled by C++11 standart
* Added RPATH usage in cmake
* Removed Requirements.cmake and moved base requirement variables to
compilers configurations
* Added many cosmetic cmake changes
* Dependencies for extractors will be built only if BUILD_TOOLS is
enabled
* BUILD_TOOLS_* options were merged into one BUILD_TOOLS (disabled by
default), in addition this option is enabled in travis build
* Added new cmake options: BUILD_WITH_WARNINGS - if enabled, compiler
will output warnings, disabled by default, USE_PCH - enables precompiled
headers usage, enabled by default but works only with MSVC compiler
* Replaced many custom macro definitions by general compilers and system
macros
* Removed some expressions for very outdated compilers in C++/C scripts
Added very basic git ignore to disable some files to be necessary added
to repository
* Removed strange undef calls which undefined standart C/C++ functions
2016-02-04 03:10:24 +02:00
Lectro
ac85c9bbc5 Added clang support
updated travis to use clang instead gcc (to use gcc, just uncomment gcc
lines and comment clang)
base clang requirement is 3.4 version
removed __fastcall redefinition
added addiitonal message that x64 build environment is detected
2016-01-18 17:06:05 +02:00
Lectro
ef5f161e7b cmake rewrite 2016-01-18 01:41:51 +02:00