2016-10-17 08:50:25 +02:00
|
|
|
#!/usr/bin/env python
|
|
|
|
|
2017-09-13 19:32:24 +02:00
|
|
|
import os
|
2014-02-10 02:10:30 +01:00
|
|
|
Import('env')
|
|
|
|
|
2017-09-13 19:32:24 +02:00
|
|
|
def make_debug_mingw(target, source, env):
|
2017-12-11 17:00:08 +01:00
|
|
|
mingw_prefix = ""
|
|
|
|
if (env["bits"] == "32"):
|
|
|
|
mingw_prefix = env["mingw_prefix_32"]
|
|
|
|
else:
|
|
|
|
mingw_prefix = env["mingw_prefix_64"]
|
2018-02-14 17:29:25 +01:00
|
|
|
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]))
|
2014-02-10 02:10:30 +01:00
|
|
|
|
2016-10-30 18:57:40 +01:00
|
|
|
common_win = [
|
2016-10-30 18:44:57 +01:00
|
|
|
"context_gl_win.cpp",
|
2017-09-08 03:01:49 +02:00
|
|
|
"crash_handler_win.cpp",
|
2016-10-30 18:44:57 +01:00
|
|
|
"os_windows.cpp",
|
|
|
|
"ctxgl_procaddr.cpp",
|
|
|
|
"key_mapping_win.cpp",
|
2017-01-08 21:29:57 +01:00
|
|
|
"joypad.cpp",
|
2017-09-08 03:01:49 +02:00
|
|
|
"power_windows.cpp",
|
2017-09-22 07:56:02 +02:00
|
|
|
"windows_terminal_logger.cpp"
|
2014-02-10 02:10:30 +01:00
|
|
|
]
|
|
|
|
|
2016-10-30 18:57:40 +01:00
|
|
|
restarget = "godot_res" + env["OBJSUFFIX"]
|
2015-11-24 14:42:05 +01:00
|
|
|
|
2016-10-30 18:57:40 +01:00
|
|
|
obj = env.RES(restarget, 'godot_res.rc')
|
2015-11-24 14:42:05 +01:00
|
|
|
|
|
|
|
common_win.append(obj)
|
2015-11-08 23:53:58 +01:00
|
|
|
|
2017-11-28 21:27:57 +01:00
|
|
|
prog = env.add_program('#bin/godot', ['godot_win.cpp'] + common_win, PROGSUFFIX=env["PROGSUFFIX"])
|
2015-05-03 23:18:56 +02:00
|
|
|
|
2015-11-08 23:53:58 +01:00
|
|
|
# Microsoft Visual Studio Project Generation
|
2017-09-25 06:04:49 +02:00
|
|
|
if env['vsproj']:
|
2016-10-30 18:44:57 +01:00
|
|
|
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)]
|
2017-09-13 19:32:24 +02:00
|
|
|
|
|
|
|
if not os.getenv("VCINSTALLDIR"):
|
2018-01-26 20:46:56 +01:00
|
|
|
if (env["debug_symbols"] == "full" or env["debug_symbols"] == "yes") and env["separate_debug_symbols"]:
|
2017-11-27 14:39:05 +01:00
|
|
|
env.AddPostAction(prog, make_debug_mingw)
|