From bc186a87ccd09a62339492cfca794841cab07087 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20v=2E=20L=C3=B6wis?= Date: Mon, 2 Feb 2009 15:32:22 +0000 Subject: [PATCH] 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. ........ --- Misc/NEWS | 2 ++ PC/getpathp.c | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/Misc/NEWS b/Misc/NEWS index dca530c6621..96d0e7333ee 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -375,6 +375,8 @@ Tools/Demos Build ----- +- Issue #4494: Fix build with Py_NO_ENABLE_SHARED on Windows. + - Issue #4895: Use _strdup on Windows CE. - Issue #4472: "configure --enable-shared" now works on OSX diff --git a/PC/getpathp.c b/PC/getpathp.c index 669ed9f0b37..36abbf24abc 100644 --- a/PC/getpathp.c +++ b/PC/getpathp.c @@ -200,6 +200,7 @@ search_for_prefix(wchar_t *argv0_path, wchar_t *landmark) } #ifdef MS_WINDOWS +#ifdef Py_ENABLE_SHARED /* a string loaded from the DLL at startup.*/ extern const char *PyWin_DLLVersionString; @@ -349,6 +350,7 @@ done: free(keyBuf); return retval; } +#endif /* Py_ENABLE_SHARED */ #endif /* MS_WINDOWS */ static void @@ -359,11 +361,15 @@ get_progpath(void) wchar_t *prog = Py_GetProgramName(); #ifdef MS_WINDOWS +#ifdef Py_ENABLE_SHARED extern HANDLE PyWin_DLLhModule; /* static init of progpath ensures final char remains \0 */ if (PyWin_DLLhModule) if (!GetModuleFileNameW(PyWin_DLLhModule, dllpath, MAXPATHLEN)) dllpath[0] = 0; +#else + dllpath[0] = 0; +#endif if (GetModuleFileNameW(NULL, progpath, MAXPATHLEN)) return; #endif @@ -471,8 +477,10 @@ calculate_path(void) } skiphome = pythonhome==NULL ? 0 : 1; +#ifdef Py_ENABLE_SHARED machinepath = getpythonregpath(HKEY_LOCAL_MACHINE, skiphome); userpath = getpythonregpath(HKEY_CURRENT_USER, skiphome); +#endif /* We only use the default relative PYTHONPATH if we havent anything better to use! */ skipdefault = envpath!=NULL || pythonhome!=NULL || \