* Mostly aimed at removing Log/DatabaseEnv includes from other headers
* Fix most packet headers including other packet headers - moved common structures such as ItemInstance to their own files
* Moved SAI function definitions to source files (massive or requiring many different dependencies)
* Delay unloading of shared libraries to the next update tick
to prevent crashes in the destructor of the last referenced
script instance.
* Closes#17557
(cherry picked from commit 445746c402485fcac60c02842d0cb5e0dd605e5c)
* Fixes issues when starting the worldserver not in the bin directory
or the CMAKE_INSTALL_PREFIX directory using the -c option.
(cherry picked from commit 86b0fcf67aadc0d313253befb0590d00efd085bc)
* Disables the shared library caching on platforms completely which
never block files on usage (like linux).
(cherry picked from commit 081720b5dd5a80aa77181712d85d309d64d3ec03)
* I wasn't able to work arround a path which contains spaces,
since it seems like a CMake specific issue.
* Closes#16947
(cherry picked from commit 42eeb28a8b9c1f3ae2d667e4238e956a4a95bd6c)
* This fixes the source change detection in linux.
* Also simplifies the detection of observed modules
* Fixes the script rebuilding on linux
* Escape windows paths to (maybe) fix paths with spaces (#16947)
(cherry picked from commit 10bc41c91e96b51aac4d811d20b535fff9562edd)
* is responsible for registering plain modules.
* requires compilation with the `WITH_DYNAMIC_LINKING` flag.
* requires further support of the ScriptMgr.