]> granicus.if.org Git - python/commitdiff
Fix [ Bug #129293 ] zlib library used for binary win32 distribution can crash
authorMark Hammond <mhammond@skippinet.com.au>
Wed, 31 Jan 2001 10:28:03 +0000 (10:28 +0000)
committerMark Hammond <mhammond@skippinet.com.au>
Wed, 31 Jan 2001 10:28:03 +0000 (10:28 +0000)
This involves changing the zlib build process to build zlib itself from sources, then use that library.  Also updated are the comments to reflect the new official home of zlib, and add Windows specific notes regarding the build process.

Modules/zlibmodule.c
PCbuild/zlib.dsp

index cb2a2e5c9716d015f69d7521ce30dfe7b08d2f42..ed00b5c18b1c7a69670ddb06d7dffb5ddeaa13f4 100644 (file)
@@ -1,6 +1,15 @@
 /* zlibmodule.c -- gzip-compatible data compression */
-/* See http://www.cdrom.com/pub/infozip/zlib/ */
-/* See http://www.winimage.com/zLibDll for Windows */
+/* See http://www.info-zip.org/pub/infozip/zlib/ */
+
+/* *** Notes for Windows Users ***
+   * Download the source distribution as referenced above.
+   * Unpack the distribution such that a "..\..\zlib-1.1.3" directory is created
+     relative to the "pcbuild" directory.
+   * Build this "zlib" project.  Via from MSVC magic, the correct zlib makefile will
+     be run, and "..\..\zlib-1.1.3\zlib.lib" will be built before zlib.pyd.
+   *** End of notes for Windows users ***
+*/
+
 
 #include "Python.h"
 #include "zlib.h"
index d1803202918eba6a12d349db1b23c456801bef66..0304228819426de05ec3728f6e77075563db7108 100644 (file)
@@ -44,7 +44,7 @@ RSC=rc.exe
 # PROP Target_Dir ""\r
 F90=df.exe\r
 # ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c\r
-# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /I "..\Include" /I "..\PC" /I "..\..\zlib113" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "ZLIB_DLL" /YX /FD /c\r
+# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /I "..\Include" /I "..\PC" /I "..\..\zlib-1.1.3" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /YX /FD /c\r
 # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32\r
 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32\r
 # ADD BASE RSC /l 0x409 /d "NDEBUG"\r
@@ -54,8 +54,13 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo\r
 LINK32=link.exe\r
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386\r
-# ADD LINK32 user32.lib kernel32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\zlib113dll\static32\zlibstat.lib /nologo /base:"0x1e1B0000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./zlib.pyd" /export:initzlib\r
+# ADD LINK32 ..\..\zlib-1.1.3\zlib.lib /nologo /base:"0x1e1B0000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./zlib.pyd" /export:initzlib\r
 # SUBTRACT LINK32 /pdb:none\r
+# Begin Special Build Tool\r
+SOURCE="$(InputPath)"\r
+PreLink_Desc=Checking static zlib has been built\r
+PreLink_Cmds=cd ..\..\zlib-1.1.3       nmake -nologo -f msdos\makefile.w32 zlib.lib\r
+# End Special Build Tool\r
 \r
 !ELSEIF  "$(CFG)" == "zlib - Win32 Debug"\r
 \r
@@ -72,7 +77,7 @@ LINK32=link.exe
 # PROP Target_Dir ""\r
 F90=df.exe\r
 # ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c\r
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\Include" /I "..\PC" /I "..\..\zlib113" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "ZLIB_DLL" /YX /FD /c\r
+# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\Include" /I "..\PC" /I "..\..\zlib-1.1.3" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /YX /FD /c\r
 # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32\r
 # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32\r
 # ADD BASE RSC /l 0x409 /d "_DEBUG"\r
@@ -82,8 +87,13 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo\r
 LINK32=link.exe\r
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept\r
-# ADD LINK32 user32.lib kernel32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\zlib113dll\static32\zlibstat.lib /nologo /base:"0x1e1B0000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./zlib_d.pyd" /pdbtype:sept /export:initzlib\r
+# ADD LINK32 ..\..\zlib-1.1.3\zlib.lib /nologo /base:"0x1e1B0000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./zlib_d.pyd" /pdbtype:sept /export:initzlib\r
 # SUBTRACT LINK32 /pdb:none\r
+# Begin Special Build Tool\r
+SOURCE="$(InputPath)"\r
+PreLink_Desc=Checking static zlib has been built\r
+PreLink_Cmds=cd ..\..\zlib-1.1.3       nmake -nologo -f msdos\makefile.w32 zlib.lib\r
+# End Special Build Tool\r
 \r
 !ENDIF \r
 \r