godot/platform
Rémi Verschelde c320a82213 SCons: Add 'split_libmodules' option to workaround linker issue
The new 'split_libmodules=yes' option is useful to work around linker
command line size limitations when linking a huge number of objects.
We're currently over 64k chars when linking libmodules.a on Windows
with MinGW, which triggers issues as seen in #30892.

Even on Linux, we can also reach linker command line size limitations
by adding more custom modules.

We force this option to True for MinGW on Windows, which fixes #30892.

Additional changes to lib splitting:

- Fix linking of the split module libs with interdependent symbols,
  hacking our way into LINKCOM and SHLINKCOM to set the `--start-group`
  and `--end-group` flags.
- Fix Python 3 compatibility in `methods.split_lib()`.
- Drop seemingly obsolete condition for 'msys' on 'posix'.
- Drop the unnecessary 'split_drivers' as the drivers lib is no longer
  too big since we moved all thirdparty builds to modules.

Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2019-12-11 15:40:28 +01:00
..
android iOS modular build and export implementation. 2019-12-01 21:57:18 +02:00
haiku iOS modular build and export implementation. 2019-12-01 21:57:18 +02:00
iphone iOS: Disable armv7 as target arch by default 2019-12-06 09:16:42 +01:00
javascript Emscripten: Re-add BINARYEN_TRAP_MODE='clamp' for fastcomp 2019-12-03 13:33:35 +01:00
osx [macOS] Send resize event without actually resizing window on backing change. 2019-12-08 18:29:31 +02:00
server iOS modular build and export implementation. 2019-12-01 21:57:18 +02:00
uwp iOS modular build and export implementation. 2019-12-01 21:57:18 +02:00
windows SCons: Add 'split_libmodules' option to workaround linker issue 2019-12-11 15:40:28 +01:00
x11 iOS modular build and export implementation. 2019-12-01 21:57:18 +02:00
register_platform_apis.h Update copyright statements to 2019 2019-01-01 12:58:10 +01:00
SCsub Always use lists for LIBS in SCons 2019-08-12 22:31:55 +02:00