From b0ead4ea4a1e0f4e5dc2a00110be8038586c9e21 Mon Sep 17 00:00:00 2001 From: Tim Peters Date: Sat, 9 Nov 2002 04:48:58 +0000 Subject: [PATCH] Start building the bz2 module on Windows. CAUTION: The Python test still has many failures, but I'm out of time for this now (already took much longer than hoped to get this far). The base bz2 library does pass its own tests (see next). CAUTION: People building on Windows have to download and build tne bz2 compression libraries now. See PCbuild\readme.txt for complete instructions. --- PC/dllbase_nt.txt | 1 + PCbuild/bz2.dsp | 99 +++++++++++++++++++++++++++++++++++++++++++++ PCbuild/pcbuild.dsw | 12 ++++++ PCbuild/readme.txt | 28 +++++++++++++ 4 files changed, 140 insertions(+) create mode 100644 PCbuild/bz2.dsp diff --git a/PC/dllbase_nt.txt b/PC/dllbase_nt.txt index 8ba546f2bc7..1a4e6772539 100644 --- a/PC/dllbase_nt.txt +++ b/PC/dllbase_nt.txt @@ -30,6 +30,7 @@ More standard extensions 1D100000 - 1e000000 - select 1D110000 - 1D120000 - unicodedata 1D120000 - 1D160000 - winsound 1D160000 - 1D170000 + - bZ2 1D170000 - 1D180000 Other extension modules - win32api 1e200000 - 1e220000 diff --git a/PCbuild/bz2.dsp b/PCbuild/bz2.dsp new file mode 100644 index 00000000000..97f8f790ce8 --- /dev/null +++ b/PCbuild/bz2.dsp @@ -0,0 +1,99 @@ +# Microsoft Developer Studio Project File - Name="bz2" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 + +CFG=bz2 - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "bz2.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "bz2.mak" CFG="bz2 - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "bz2 - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "bz2 - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "bz2" +# PROP Scc_LocalPath ".." +CPP=cl.exe +MTL=midl.exe +RSC=rc.exe + +!IF "$(CFG)" == "bz2 - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "." +# PROP Intermediate_Dir "x86-temp-release\bz2" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +F90=df.exe +# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c +# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /I "..\Include" /I "..\PC" /I "..\..\bzip2-1.0.2" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /YX /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# 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 +# ADD LINK32 ..\..\bzip2-1.0.2\libbz2.lib /nologo /base:"0x1D170000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"libc" /out:"./bz2.pyd" +# SUBTRACT LINK32 /pdb:none /nodefaultlib + +!ELSEIF "$(CFG)" == "bz2 - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "." +# PROP Intermediate_Dir "x86-temp-debug\bz2" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +F90=df.exe +# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\Include" /I "..\PC" /I "..\..\bzip2-1.0.2" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /YX /FD /c +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# 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 +# ADD LINK32 ..\..\bzip2-1.0.2\libbz2.lib /nologo /base:"0x1D170000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"msvcrt" /nodefaultlib:"libc" /out:"./bz2_d.pyd" /pdbtype:sept +# SUBTRACT LINK32 /pdb:none + +!ENDIF + +# Begin Target + +# Name "bz2 - Win32 Release" +# Name "bz2 - Win32 Debug" +# Begin Source File + +SOURCE=..\Modules\bz2module.c +# End Source File +# End Target +# End Project diff --git a/PCbuild/pcbuild.dsw b/PCbuild/pcbuild.dsw index e09a2530cd0..1d16d0825e8 100644 --- a/PCbuild/pcbuild.dsw +++ b/PCbuild/pcbuild.dsw @@ -93,6 +93,18 @@ Package=<4> ############################################################################### +Project: "bz2"=.\bz2.dsp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + Project: "mmap"=.\mmap.dsp - Package Owner=<4> Package=<5> diff --git a/PCbuild/readme.txt b/PCbuild/readme.txt index 0109317cd9f..5073a413b2c 100644 --- a/PCbuild/readme.txt +++ b/PCbuild/readme.txt @@ -88,6 +88,34 @@ zlib zlib-1.1.4\ when you do a clean, so if you want to rebuild zlib.lib you need to clean up zlib-1.1.4\ by hand. +bz2 + Python wrapper for the libbz2 compression library. Homepage + http://sources.redhat.com/bzip2/ + Download the source tarball, bzip2-1.0.2.tar.gz. + Unpack into dist\bzip2-1.0.2. WARNING: If you using WinZip, you + must disable its "TAR file smart CR/LF conversion" feature (under + Options -> Configuration -> Miscellaneous -> Other) for the duration. + Don't bother trying to use libbz2.dsp with MSVC. After 10 minutes + of fiddling, I couldn't get it to work. Perhaps it works with + MSVC 5 (I used MSVC 6). It's better to run the by-hand makefile + anyway, because it runs a helpful test step at the end. + cd into dist\bzip2-1.0.2, and run + nmake -f makefile.msc + [Note that if you're running Win9X, you'll need to run vcvars32.bat + before running nmake (this batch file is in your MSVC installation). + TODO: make this work like zlib (in particular, MSVC runs the prelink + step in an enviroment that already has the correct envars set up). + ] + The make step should yield any warnings or errors, and should end + by displaying 6 blocks each terminated with + FC: no differences encountered + If FC finds differences, see the warning abou WinZip above (when I + first tried it, sample3.ref failed due to CRLF conversion). + All of this managed to build bzip2-1.0.2\libbz2.lib, which the Python + project links in. + + + bsddb Python wrapper for the BSD database 1.85. Requires db.1.85.win32.zip, from the "bsd db" link at