* Adds CMAKE_COMMAND and CMAKE_BINARY_DIR to revision_data.h
* Move the source and mysql exe path handling out of the DBUpdater.
* Make some Config methods const for correctness.
* Remove C & CXX flags from revision_data.h
(was unused and didn't capture all cxx vars)
* Reorder the link order to prevent `ld` from ignoring the file
* Ref #15671
Each network thread has its own io_service - this means that all operations on a given socket except queueing packets run from a single thread, removing the need for locking
Sending packets now writes to a lockfree intermediate queue directly, encryption is applied in network thread if it was required at the time of sending the packet
Tiles which are owned by the mesh should have the DT_TILE_FREE_DATA flag to ensure
deallocation on removal from the mesh.
Log:
==23516== 6,181,976 bytes in 6 blocks are definitely lost in loss record 15 of 15
==23516== at 0x4C298A0: operator new[](unsigned long) (vg_replace_malloc.c:389)
==23516== by 0x2052660: dtCustomAlloc(int, dtAllocHint) (Memory.h:11)
==23516== by 0x29D7FDA: dtAlloc(int, dtAllocHint) (DetourAlloc.cpp:43)
==23516== by 0x230AA70: MMAP::MMapManager::loadMap(std::string const&, unsigned int, int, int) (MMapManager.cpp:166)
==23516== by 0x1DD585B: Map::LoadMMap(int, int) (Map.cpp:125)
==23516== by 0x1DD7266: Map::LoadMapAndVMap(int, int) (Map.cpp:200)
==23516== by 0x1DD93C6: Map::EnsureGridCreated_i(CoordPair<64u> const&) (Map.cpp:453)
==23516== by 0x1DD9129: Map::EnsureGridCreated(CoordPair<64u> const&) (Map.cpp:429)
==23516== by 0x1DED100: Map::GetGrid(float, float) (Map.cpp:2200)
==23516== by 0x1DE0F4C: Map::GetAreaFlag(float, float, float, bool*) const (Map.cpp:2349)
==23516== by 0x198521B: Map::GetZoneId(float, float, float) const (Map.h:353)
==23516== by 0x197CFF0: WorldObject::GetZoneId() const (Object.cpp:1277)
Phase tiles aren't managed by detour so they shouldn't be free'd automatically on removal.
See MMapManager::UnloadPhaseTile
flight masters along the way, not directly through them
* Taxi cost on multi-segment paths is now charged per segment when it is started
Cherry-picked from commit 2056961aae (+fixes)