mirror of
https://github.com/quantum5/punyverse.git
synced 2025-04-24 21:21:59 -04:00
Fix launcher issues.
This commit is contained in:
parent
c50f85bdcd
commit
bccae3649d
|
@ -1,3 +1,4 @@
|
||||||
|
#include <stdlib.h>
|
||||||
#include <Windows.h>
|
#include <Windows.h>
|
||||||
#include <Python.h>
|
#include <Python.h>
|
||||||
|
|
||||||
|
@ -10,8 +11,12 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
|
||||||
int main()
|
int main()
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
int argc;
|
int argc = __argc;
|
||||||
LPWSTR *argv = CommandLineToArgvW(GetCommandLineW(), &argc);
|
#if PY_MAJOR_VERSION >= 3
|
||||||
|
LPWSTR *argv = __wargv;
|
||||||
|
#else
|
||||||
|
char **argv = __argv;
|
||||||
|
#endif
|
||||||
|
|
||||||
Py_SetProgramName(argv[0]);
|
Py_SetProgramName(argv[0]);
|
||||||
Py_Initialize();
|
Py_Initialize();
|
||||||
|
|
11
setup.py
11
setup.py
|
@ -56,6 +56,14 @@ if os.name == 'nt':
|
||||||
build_temp, target_lang
|
build_temp, target_lang
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def make_manifest_get_embed_info(old_func):
|
||||||
|
def manifest_get_embed_info(self, target_desc, ld_args):
|
||||||
|
temp_manifest, mfid = old_func(target_desc, ld_args)
|
||||||
|
if not os.path.exists(temp_manifest):
|
||||||
|
return None
|
||||||
|
return temp_manifest, mfid
|
||||||
|
return manifest_get_embed_info.__get__(old_func.__self__)
|
||||||
|
|
||||||
|
|
||||||
class build_ext_exe(build_ext, object):
|
class build_ext_exe(build_ext, object):
|
||||||
def get_ext_filename(self, fullname):
|
def get_ext_filename(self, fullname):
|
||||||
|
@ -73,8 +81,11 @@ if os.name == 'nt':
|
||||||
if isinstance(ext, SimpleExecutable):
|
if isinstance(ext, SimpleExecutable):
|
||||||
old = self.shlib_compiler.link_shared_object
|
old = self.shlib_compiler.link_shared_object
|
||||||
self.shlib_compiler.link_shared_object = link_shared_object.__get__(self.shlib_compiler)
|
self.shlib_compiler.link_shared_object = link_shared_object.__get__(self.shlib_compiler)
|
||||||
|
self.shlib_compiler.manifest_get_embed_info = \
|
||||||
|
make_manifest_get_embed_info(self.shlib_compiler.manifest_get_embed_info)
|
||||||
super(build_ext_exe, self).build_extension(ext)
|
super(build_ext_exe, self).build_extension(ext)
|
||||||
self.shlib_compiler.link_shared_object = old
|
self.shlib_compiler.link_shared_object = old
|
||||||
|
del self.shlib_compiler.manifest_get_embed_info
|
||||||
else:
|
else:
|
||||||
super(build_ext_exe, self).build_extension(ext)
|
super(build_ext_exe, self).build_extension(ext)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue