mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 02:15:43 -04:00
plugin - p3dpythonw.exe name configurable independently from p3dpython.exe name
This commit is contained in:
parent
49026617c1
commit
5a84cbf730
@ -3095,7 +3095,7 @@ class Packager:
|
|||||||
|
|
||||||
self.currentPackage.signParams.append((certificate, chain, pkey, password))
|
self.currentPackage.signParams.append((certificate, chain, pkey, password))
|
||||||
|
|
||||||
def do_setupPanda3D(self, p3dpythonName=None):
|
def do_setupPanda3D(self, p3dpythonName=None, p3dpythonwName=None):
|
||||||
""" A special convenience command that adds the minimum
|
""" A special convenience command that adds the minimum
|
||||||
startup modules for a panda3d package, intended for developers
|
startup modules for a panda3d package, intended for developers
|
||||||
producing their own custom panda3d for download. Should be
|
producing their own custom panda3d for download. Should be
|
||||||
@ -3165,8 +3165,15 @@ class Packager:
|
|||||||
else:
|
else:
|
||||||
self.do_config(p3dpython_name=p3dpythonName)
|
self.do_config(p3dpython_name=p3dpythonName)
|
||||||
self.do_file('p3dpython.exe', newName=p3dpythonName+'.exe')
|
self.do_file('p3dpython.exe', newName=p3dpythonName+'.exe')
|
||||||
|
|
||||||
|
# The "Windows" executable appends a 'w' to whatever name is used
|
||||||
|
# above, unless an override name is explicitly specified.
|
||||||
if self.platform.startswith('win'):
|
if self.platform.startswith('win'):
|
||||||
self.do_file('p3dpythonw.exe', newName=p3dpythonName+'w.exe')
|
if p3dpythonwName is None:
|
||||||
|
p3dpythonwName = p3dpythonName+'w'
|
||||||
|
else:
|
||||||
|
self.do_config(p3dpythonw_name=p3dpythonwName)
|
||||||
|
self.do_file('p3dpythonw.exe', newName=p3dpythonwName+'.exe')
|
||||||
|
|
||||||
self.do_file('libp3dpython.dll')
|
self.do_file('libp3dpython.dll')
|
||||||
|
|
||||||
|
@ -824,21 +824,32 @@ start_p3dpython(P3DInstance *inst) {
|
|||||||
// and run the dynamic library. If that fails for some reason, we
|
// and run the dynamic library. If that fails for some reason, we
|
||||||
// can fall back to loading and running the library directly.
|
// can fall back to loading and running the library directly.
|
||||||
_p3dpython_exe = P3D_PLUGIN_P3DPYTHON;
|
_p3dpython_exe = P3D_PLUGIN_P3DPYTHON;
|
||||||
|
string p3dpythonw_exe = _p3dpython_exe + "w";
|
||||||
if (_p3dpython_exe.empty()) {
|
if (_p3dpython_exe.empty()) {
|
||||||
string p3dpython_name = "p3dpython";
|
// Allow package to override the name of the p3dpython executables.
|
||||||
|
const char *p3dpython_name_xconfig = NULL;
|
||||||
// Allow package to override the name of the p3dpython executable.
|
const char *p3dpythonw_name_xconfig = NULL;
|
||||||
const TiXmlElement *panda3d_xconfig = inst->_panda3d->get_xconfig();
|
const TiXmlElement *panda3d_xconfig = inst->_panda3d->get_xconfig();
|
||||||
if (panda3d_xconfig != NULL) {
|
if (panda3d_xconfig != NULL) {
|
||||||
const char *p3dpython_name_x = panda3d_xconfig->Attribute("p3dpython_name");
|
p3dpython_name_xconfig = panda3d_xconfig->Attribute("p3dpython_name");
|
||||||
if (p3dpython_name_x != NULL) {
|
p3dpythonw_name_xconfig = panda3d_xconfig->Attribute("p3dpythonw_name");
|
||||||
nout << "p3dpython_name from panda3d xconfig: " << p3dpython_name_x << "\n";
|
}
|
||||||
p3dpython_name = p3dpython_name_x;
|
|
||||||
}
|
string p3dpython_name = "p3dpython";
|
||||||
|
if (p3dpython_name_xconfig != NULL) {
|
||||||
|
nout << "p3dpython_name from panda3d xconfig: " << p3dpython_name_xconfig << "\n";
|
||||||
|
p3dpython_name = p3dpython_name_xconfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
string p3dpythonw_name = p3dpython_name + "w";
|
||||||
|
if (p3dpythonw_name_xconfig != NULL) {
|
||||||
|
nout << "p3dpythonw_name from panda3d xconfig: " << p3dpythonw_name_xconfig << "\n";
|
||||||
|
p3dpythonw_name = p3dpythonw_name_xconfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Build full executable path.
|
// Build full executable path.
|
||||||
_p3dpython_exe = _python_root_dir + "/" + p3dpython_name;
|
_p3dpython_exe = _python_root_dir + "/" + p3dpython_name;
|
||||||
|
p3dpythonw_exe = _python_root_dir + "/" + p3dpythonw_name;
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
// On OSX, run from the packaged bundle, if it exists.
|
// On OSX, run from the packaged bundle, if it exists.
|
||||||
string bundle_exe = _python_root_dir + "/P3DPython.app/Contents/MacOS/p3dpython";
|
string bundle_exe = _python_root_dir + "/P3DPython.app/Contents/MacOS/p3dpython";
|
||||||
@ -847,13 +858,13 @@ start_p3dpython(P3DInstance *inst) {
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
replace_slashes(_p3dpython_exe);
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
if (!inst_mgr->get_console_environment()) {
|
if (!inst_mgr->get_console_environment()) {
|
||||||
_p3dpython_exe += "w";
|
_p3dpython_exe = p3dpythonw_exe;
|
||||||
}
|
}
|
||||||
_p3dpython_exe += ".exe";
|
_p3dpython_exe += ".exe";
|
||||||
#endif
|
#endif
|
||||||
|
replace_slashes(_p3dpython_exe);
|
||||||
nout << "_p3dpython_exe: " << _p3dpython_exe << "\n";
|
nout << "_p3dpython_exe: " << _p3dpython_exe << "\n";
|
||||||
|
|
||||||
// Populate the new process' environment.
|
// Populate the new process' environment.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user