]> granicus.if.org Git - python/commitdiff
Merged revisions 69205 via svnmerge from
authorMartin v. Löwis <martin@v.loewis.de>
Mon, 2 Feb 2009 15:32:22 +0000 (15:32 +0000)
committerMartin v. Löwis <martin@v.loewis.de>
Mon, 2 Feb 2009 15:32:22 +0000 (15:32 +0000)
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
PC/getpathp.c

index dca530c66213e98d2c485999cfed3bb46c2ec37b..96d0e7333eec6fd1c9907b0249e7fa4252a8daed 100644 (file)
--- 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
index 669ed9f0b375df9c61ff0b2cf2904ba5625126a5..36abbf24abcfec215cef1b5032d5030c19586a0c 100644 (file)
@@ -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 || \