diff --git a/direct/src/p3d/pdeploy.py b/direct/src/p3d/pdeploy.py index b0dd27f954..e13bd55d66 100644 --- a/direct/src/p3d/pdeploy.py +++ b/direct/src/p3d/pdeploy.py @@ -72,7 +72,7 @@ Options: separated list of platforms that the p3d package will be deployed for. If omitted, it will be built for all platforms. This option may be specified multiple times. - Examples of valid platforms are win32, linux_amd64 and osx_ppc. + Examples of valid platforms are win_i386, linux_amd64 and osx_ppc. -c If this option is provided, any -P options are ignored and diff --git a/direct/src/plugin/p3dInstanceManager.cxx b/direct/src/plugin/p3dInstanceManager.cxx index 0fc26caae2..27886267f0 100644 --- a/direct/src/plugin/p3dInstanceManager.cxx +++ b/direct/src/plugin/p3dInstanceManager.cxx @@ -216,16 +216,18 @@ initialize(int api_version, const string &contents_filename, // caller), we might in fact support multiple platforms. _platform = DTOOL_PLATFORM; #ifdef _WIN32 - if (_platform == "win64") { - _supported_platforms.push_back("win64"); + if (_platform == "win_amd64") { + _supported_platforms.push_back("win_amd64"); + _supported_platforms.push_back("win_i386"); _supported_platforms.push_back("win32"); - } else if (_platform == "win32") { + } else if (_platform == "win_i386" || _platform == "win32") { // This is a WIN32 process, but determine if the underlying OS // actually supports WIN64. if (supports_win64()) { - _supported_platforms.push_back("win64"); + _supported_platforms.push_back("win_amd64"); } + _supported_platforms.push_back("win_i386"); _supported_platforms.push_back("win32"); } #endif // _WIN32 diff --git a/direct/src/plugin/p3dPackage.cxx b/direct/src/plugin/p3dPackage.cxx index 2d5b327c32..19f85a59fa 100755 --- a/direct/src/plugin/p3dPackage.cxx +++ b/direct/src/plugin/p3dPackage.cxx @@ -604,6 +604,8 @@ contents_file_redownload_finished(bool success) { //////////////////////////////////////////////////////////////////// void P3DPackage:: host_got_contents_file() { + P3DInstanceManager *inst_mgr = P3DInstanceManager::get_global_ptr(); + if (!_alt_host.empty()) { // If we have an alt host specification, maybe we need to change // the host now. @@ -619,7 +621,6 @@ host_got_contents_file() { // host. _alt_host.clear(); - P3DInstanceManager *inst_mgr = P3DInstanceManager::get_global_ptr(); if (!_host->has_current_contents_file(inst_mgr)) { // Now go back and get the contents.xml file for the new host. download_contents_file(); @@ -646,7 +647,8 @@ host_got_contents_file() { set_fullname(); } } else { - nout << "Couldn't find a platform for " << get_package_name() << ".\n"; + nout << "Couldn't find a platform for " << get_package_name() + << " matching " << inst_mgr->get_platform() << ".\n"; } nout << "_per_platform for " << get_package_name() << " = " << _per_platform << "\n"; @@ -662,7 +664,6 @@ host_got_contents_file() { } // Ensure the package directory exists; create it if it does not. - P3DInstanceManager *inst_mgr = P3DInstanceManager::get_global_ptr(); if (inst_mgr->get_verify_contents() != P3D_VC_never) { mkdir_complete(_package_dir, nout); } diff --git a/direct/src/plugin_installer/make_xpi.py b/direct/src/plugin_installer/make_xpi.py index bd856507ef..185a6cdfd4 100755 --- a/direct/src/plugin_installer/make_xpi.py +++ b/direct/src/plugin_installer/make_xpi.py @@ -46,7 +46,8 @@ assert options.host_url, "The host_url must be supplied!" # going through this mechanism. FirefoxPlatformMap = { 'win32' : 'WINNT_x86-msvc', - 'win64' : 'WINNT_x86_64-msvc', + 'win_i386' : 'WINNT_x86-msvc', + 'win_amd64' : 'WINNT_x86_64-msvc', # 'linux_i386' : 'Linux_x86-gcc3', # 'linux_amd64' : 'Linux_x86_64-gcc3', # 'linux_ppc' : 'Linux_ppc-gcc3', diff --git a/direct/src/showutil/FreezeTool.py b/direct/src/showutil/FreezeTool.py index 7786a2a0fe..28b0ce108b 100644 --- a/direct/src/showutil/FreezeTool.py +++ b/direct/src/showutil/FreezeTool.py @@ -122,7 +122,7 @@ class CompilationEnvironment: # MSVC/bin and /lib directories have a different location # for win64. - if self.platform == 'win64': + if self.platform == 'win_amd64': self.suffix64 = '\\amd64' # If it is run by makepanda, it handles the MSVC and PlatformSDK paths itself.