Merged revisions 69205 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r69205 | martin.v.loewis | 2009-02-02 15:23:16 +0100 (Mo, 02 Feb 2009) | 1 line

  Issue #4494: Fix build with Py_NO_ENABLE_SHARED on Windows.
........
This commit is contained in:
Martin v. Löwis 2009-02-02 15:32:22 +00:00
parent 49db063323
commit bc186a87cc
2 changed files with 10 additions and 0 deletions

View File

@ -375,6 +375,8 @@ Tools/Demos
Build Build
----- -----
- Issue #4494: Fix build with Py_NO_ENABLE_SHARED on Windows.
- Issue #4895: Use _strdup on Windows CE. - Issue #4895: Use _strdup on Windows CE.
- Issue #4472: "configure --enable-shared" now works on OSX - Issue #4472: "configure --enable-shared" now works on OSX

View File

@ -200,6 +200,7 @@ search_for_prefix(wchar_t *argv0_path, wchar_t *landmark)
} }
#ifdef MS_WINDOWS #ifdef MS_WINDOWS
#ifdef Py_ENABLE_SHARED
/* a string loaded from the DLL at startup.*/ /* a string loaded from the DLL at startup.*/
extern const char *PyWin_DLLVersionString; extern const char *PyWin_DLLVersionString;
@ -349,6 +350,7 @@ done:
free(keyBuf); free(keyBuf);
return retval; return retval;
} }
#endif /* Py_ENABLE_SHARED */
#endif /* MS_WINDOWS */ #endif /* MS_WINDOWS */
static void static void
@ -359,11 +361,15 @@ get_progpath(void)
wchar_t *prog = Py_GetProgramName(); wchar_t *prog = Py_GetProgramName();
#ifdef MS_WINDOWS #ifdef MS_WINDOWS
#ifdef Py_ENABLE_SHARED
extern HANDLE PyWin_DLLhModule; extern HANDLE PyWin_DLLhModule;
/* static init of progpath ensures final char remains \0 */ /* static init of progpath ensures final char remains \0 */
if (PyWin_DLLhModule) if (PyWin_DLLhModule)
if (!GetModuleFileNameW(PyWin_DLLhModule, dllpath, MAXPATHLEN)) if (!GetModuleFileNameW(PyWin_DLLhModule, dllpath, MAXPATHLEN))
dllpath[0] = 0; dllpath[0] = 0;
#else
dllpath[0] = 0;
#endif
if (GetModuleFileNameW(NULL, progpath, MAXPATHLEN)) if (GetModuleFileNameW(NULL, progpath, MAXPATHLEN))
return; return;
#endif #endif
@ -471,8 +477,10 @@ calculate_path(void)
} }
skiphome = pythonhome==NULL ? 0 : 1; skiphome = pythonhome==NULL ? 0 : 1;
#ifdef Py_ENABLE_SHARED
machinepath = getpythonregpath(HKEY_LOCAL_MACHINE, skiphome); machinepath = getpythonregpath(HKEY_LOCAL_MACHINE, skiphome);
userpath = getpythonregpath(HKEY_CURRENT_USER, skiphome); userpath = getpythonregpath(HKEY_CURRENT_USER, skiphome);
#endif
/* We only use the default relative PYTHONPATH if we havent /* We only use the default relative PYTHONPATH if we havent
anything better to use! */ anything better to use! */
skipdefault = envpath!=NULL || pythonhome!=NULL || \ skipdefault = envpath!=NULL || pythonhome!=NULL || \