godot/platform/windows/SCsub
2018-02-19 22:25:41 +01:00

44 lines
1.4 KiB
Python

#!/usr/bin/env python
import os
Import('env')
def make_debug_mingw(target, source, env):
mingw_prefix = ""
if (env["bits"] == "32"):
mingw_prefix = env["mingw_prefix_32"]
else:
mingw_prefix = env["mingw_prefix_64"]
os.system(mingw_prefix + 'objcopy --only-keep-debug {0} {0}.debugsymbols'.format(target[0]))
os.system(mingw_prefix + 'strip --strip-debug --strip-unneeded {0}'.format(target[0]))
os.system(mingw_prefix + 'objcopy --add-gnu-debuglink={0}.debugsymbols {0}'.format(target[0]))
common_win = [
"context_gl_win.cpp",
"crash_handler_win.cpp",
"os_windows.cpp",
"ctxgl_procaddr.cpp",
"key_mapping_win.cpp",
"joypad.cpp",
"power_windows.cpp",
"windows_terminal_logger.cpp"
]
restarget = "godot_res" + env["OBJSUFFIX"]
obj = env.RES(restarget, 'godot_res.rc')
common_win.append(obj)
prog = env.add_program('#bin/godot', ['godot_win.cpp'] + common_win, PROGSUFFIX=env["PROGSUFFIX"])
# Microsoft Visual Studio Project Generation
if env['vsproj']:
env.vs_srcs = env.vs_srcs + ["platform/windows/godot_win.cpp"]
for x in common_win:
env.vs_srcs = env.vs_srcs + ["platform/windows/" + str(x)]
if not os.getenv("VCINSTALLDIR"):
if (env["debug_symbols"] == "full" or env["debug_symbols"] == "yes") and env["separate_debug_symbols"]:
env.AddPostAction(prog, make_debug_mingw)