aboutsummaryrefslogtreecommitdiff
path: root/methods.py
diff options
context:
space:
mode:
authorPedro J. Estébanez2016-10-29 03:34:53 +0200
committerPedro J. Estébanez2016-10-29 03:34:53 +0200
commit51ad1c16683589aa1ebc73e29416e1b0fc50d30d (patch)
tree2be83e0301de6eab2bf4bb7de1faf6b0182cfca9 /methods.py
parent8321e48ab0ac0700e1aef8f829140052c1ba4c6d (diff)
downloadgodot-51ad1c16683589aa1ebc73e29416e1b0fc50d30d.tar.gz
godot-51ad1c16683589aa1ebc73e29416e1b0fc50d30d.tar.zst
godot-51ad1c16683589aa1ebc73e29416e1b0fc50d30d.zip
Diffstat (limited to 'methods.py')
-rwxr-xr-xmethods.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/methods.py b/methods.py
index 477fe4f12..26c1c6e68 100755
--- a/methods.py
+++ b/methods.py
@@ -1352,7 +1352,15 @@ def use_windows_spawn_fix(self, platform=None):
if (os.name!="nt"):
return #not needed, only for windows
- self.split_drivers=True
+ # On Windows, due to the limited command line length, when creating a static library
+ # from a very high number of objects SCons will invoke "ar" once per object file;
+ # that makes object files with same names to be overwritten so the last wins and
+ # the library looses symbols defined by overwritten objects.
+ # By enabling quick append instead of the default mode (replacing), libraries will
+ # got built correctly regardless the invokation strategy.
+ # Furthermore, since SCons will rebuild the library from scratch when an object file
+ # changes, no multiple versions of the same object file will be present.
+ self.Replace(ARFLAGS='q')
import subprocess