summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2015-01-03 13:03:13 -0300
committerJuan Linietsky <reduzio@gmail.com>2015-01-03 13:03:13 -0300
commit6b5b95bb4e269a1bd740707e27eae09983b84268 (patch)
treeaa0c80dd4d683eaa99e1ad804d8d742f369bdd73 /platform
parent85c084c7707c4b9cac978bc0caec0a76b5e37818 (diff)
-added new code completion guess locations, closes #1032
-moved commandline fix to mingw-only, should fix #1064
Diffstat (limited to 'platform')
-rw-r--r--platform/windows/detect.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/platform/windows/detect.py b/platform/windows/detect.py
index be92ee8f6d..245d6f1bd3 100644
--- a/platform/windows/detect.py
+++ b/platform/windows/detect.py
@@ -135,6 +135,27 @@ def configure(env):
env.Append(LIBPATH=[DIRECTX_PATH+"/Lib/x86"])
env['ENV'] = os.environ;
else:
+
+ # Workaround for MinGW. See:
+ # http://www.scons.org/wiki/LongCmdLinesOnWin32
+ if (os.name=="nt"):
+ import subprocess
+ def mySpawn(sh, escape, cmd, args, env):
+ newargs = ' '.join(args[1:])
+ cmdline = cmd + " " + newargs
+ startupinfo = subprocess.STARTUPINFO()
+ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
+ proc = subprocess.Popen(cmdline, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE, startupinfo=startupinfo, shell = False, env = env)
+ data, err = proc.communicate()
+ rv = proc.wait()
+ if rv:
+ print "====="
+ print err
+ print "====="
+ return rv
+ env['SPAWN'] = mySpawn
+
#build using mingw
if (os.name=="nt"):
env['ENV']['TMP'] = os.environ['TMP'] #way to go scons, you can be so stupid sometimes