#!/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)