diff options
author | Zachary Ware <zachary.ware@gmail.com> | 2017-09-07 00:29:37 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-07 00:29:37 (GMT) |
commit | d01db1c2a2a71455163a1d3b214cc8dc27201303 (patch) | |
tree | 6b089cebac71c3bc48df25985c2911597c559a5b /PCbuild | |
parent | e7c566caf177afe43b57f0b2723e723d880368e8 (diff) | |
download | cpython-d01db1c2a2a71455163a1d3b214cc8dc27201303.zip cpython-d01db1c2a2a71455163a1d3b214cc8dc27201303.tar.gz cpython-d01db1c2a2a71455163a1d3b214cc8dc27201303.tar.bz2 |
bpo-31358: Pull zlib out of the repository (GH-3375)
Also enable building externals by default on Windows, use PCbuild\build.bat's -E option to disable it.
Diffstat (limited to 'PCbuild')
-rw-r--r-- | PCbuild/build.bat | 8 | ||||
-rw-r--r-- | PCbuild/get_externals.bat | 1 | ||||
-rw-r--r-- | PCbuild/pcbuild.proj | 2 | ||||
-rw-r--r-- | PCbuild/python.props | 1 | ||||
-rw-r--r-- | PCbuild/pythoncore.vcxproj | 57 |
5 files changed, 41 insertions, 28 deletions
diff --git a/PCbuild/build.bat b/PCbuild/build.bat index 3826c66..99d9ead 100644 --- a/PCbuild/build.bat +++ b/PCbuild/build.bat @@ -20,9 +20,10 @@ echo. -h Display this help message echo. -V Display version information for the current build echo. -r Target Rebuild instead of Build echo. -d Set the configuration to Debug -echo. -e Build external libraries fetched by get_externals.bat -echo. Extension modules that depend on external libraries will not attempt -echo. to build if this flag is not present +echo. -E Don't fetch or build external libraries. Extension modules that +echo. depend on external libraries will not attempt to build if this flag +echo. is present; -e is also accepted to explicitly enable fetching and +echo. building externals. echo. -m Enable parallel build (enabled by default) echo. -M Disable parallel build echo. -v Increased output messages @@ -79,6 +80,7 @@ rem These use the actual property names used by MSBuild. We could just let rem them in through the environment, but we specify them on the command line rem anyway for visibility so set defaults after this if "%~1"=="-e" (set IncludeExternals=true) & shift & goto CheckOpts +if "%~1"=="-E" (set IncludeExternals=false) & shift & goto CheckOpts if "%~1"=="--no-ssl" (set IncludeSSL=false) & shift & goto CheckOpts if "%~1"=="--no-tkinter" (set IncludeTkinter=false) & shift & goto CheckOpts diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index 1c0e9a0..0bbd2ad 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -55,6 +55,7 @@ if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.6.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.6.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tix-8.4.3.6 set libraries=%libraries% xz-5.2.2 +set libraries=%libraries% zlib-1.2.11 for %%e in (%libraries%) do ( if exist "%EXTERNALS_DIR%\%%e" ( diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj index 8d30e08..22cf7b5 100644 --- a/PCbuild/pcbuild.proj +++ b/PCbuild/pcbuild.proj @@ -117,4 +117,4 @@ <Target Name="Rebuild" DependsOnTargets="Clean;Build" /> <Target Name="RebuildAll" DependsOnTargets="CleanAll;Build" /> -</Project>
\ No newline at end of file +</Project> diff --git a/PCbuild/python.props b/PCbuild/python.props index c2baebc..3bfbb77 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -51,6 +51,7 @@ <opensslOutDir>$(ExternalsDir)openssl-bin-1.0.2k\$(ArchName)\</opensslOutDir> <opensslIncludeDir>$(opensslOutDir)include</opensslIncludeDir> <nasmDir>$(ExternalsDir)\nasm-2.11.06\</nasmDir> + <zlibDir>$(ExternalsDir)\zlib-1.2.11\</zlibDir> <!-- Suffix for all binaries when building for debug --> <PyDebugExt Condition="'$(PyDebugExt)' == '' and $(Configuration) == 'Debug'">_d</PyDebugExt> diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj index 763540e..b0d2e9b 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -66,8 +66,10 @@ <ItemDefinitionGroup> <ClCompile> <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions> - <AdditionalIncludeDirectories>$(PySourcePath)Python;$(PySourcePath)Modules\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(PySourcePath)Python;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories Condition="$(IncludeExternals)">$(zlibDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>_USRDLL;Py_BUILD_CORE;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions)</PreprocessorDefinitions> + <PreprocessorDefinitions Condition="$(IncludeExternals)">_Py_HAVE_ZLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> </ClCompile> <Link> <AdditionalDependencies>version.lib;shlwapi.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies> @@ -175,17 +177,6 @@ <ClInclude Include="..\Modules\sre_constants.h" /> <ClInclude Include="..\Modules\sre_lib.h" /> <ClInclude Include="..\Modules\_io\_iomodule.h" /> - <ClInclude Include="..\Modules\zlib\crc32.h" /> - <ClInclude Include="..\Modules\zlib\deflate.h" /> - <ClInclude Include="..\Modules\zlib\inffast.h" /> - <ClInclude Include="..\Modules\zlib\inffixed.h" /> - <ClInclude Include="..\Modules\zlib\inflate.h" /> - <ClInclude Include="..\Modules\zlib\inftrees.h" /> - <ClInclude Include="..\Modules\zlib\trees.h" /> - <ClInclude Include="..\Modules\zlib\zconf.h" /> - <ClInclude Include="..\Modules\zlib\zconf.in.h" /> - <ClInclude Include="..\Modules\zlib\zlib.h" /> - <ClInclude Include="..\Modules\zlib\zutil.h" /> <ClInclude Include="..\Modules\cjkcodecs\alg_jisx0201.h" /> <ClInclude Include="..\Modules\cjkcodecs\cjkcodecs.h" /> <ClInclude Include="..\Modules\cjkcodecs\emu_jisx0213_2000.h" /> @@ -213,6 +204,19 @@ <ClInclude Include="..\Python\thread_nt.h" /> <ClInclude Include="..\Python\wordcode_helpers.h" /> </ItemGroup> + <ItemGroup Condition="$(IncludeExternals)"> + <ClInclude Include="$(zlibDir)\crc32.h" /> + <ClInclude Include="$(zlibDir)\deflate.h" /> + <ClInclude Include="$(zlibDir)\inffast.h" /> + <ClInclude Include="$(zlibDir)\inffixed.h" /> + <ClInclude Include="$(zlibDir)\inflate.h" /> + <ClInclude Include="$(zlibDir)\inftrees.h" /> + <ClInclude Include="$(zlibDir)\trees.h" /> + <ClInclude Include="$(zlibDir)\zconf.h" /> + <ClInclude Include="$(zlibDir)\zconf.in.h" /> + <ClInclude Include="$(zlibDir)\zlib.h" /> + <ClInclude Include="$(zlibDir)\zutil.h" /> + </ItemGroup> <ItemGroup> <ClCompile Include="..\Modules\_bisectmodule.c" /> <ClCompile Include="..\Modules\_blake2\blake2module.c" /> @@ -264,7 +268,6 @@ <ClCompile Include="..\Modules\timemodule.c" /> <ClCompile Include="..\Modules\xxsubtype.c" /> <ClCompile Include="..\Modules\zipimport.c" /> - <ClCompile Include="..\Modules\zlibmodule.c" /> <ClCompile Include="..\Modules\_io\fileio.c" /> <ClCompile Include="..\Modules\_io\bytesio.c" /> <ClCompile Include="..\Modules\_io\stringio.c" /> @@ -273,17 +276,6 @@ <ClCompile Include="..\Modules\_io\textio.c" /> <ClCompile Include="..\Modules\_io\winconsoleio.c" /> <ClCompile Include="..\Modules\_io\_iomodule.c" /> - <ClCompile Include="..\Modules\zlib\adler32.c" /> - <ClCompile Include="..\Modules\zlib\compress.c" /> - <ClCompile Include="..\Modules\zlib\crc32.c" /> - <ClCompile Include="..\Modules\zlib\deflate.c" /> - <ClCompile Include="..\Modules\zlib\infback.c" /> - <ClCompile Include="..\Modules\zlib\inffast.c" /> - <ClCompile Include="..\Modules\zlib\inflate.c" /> - <ClCompile Include="..\Modules\zlib\inftrees.c" /> - <ClCompile Include="..\Modules\zlib\trees.c" /> - <ClCompile Include="..\Modules\zlib\uncompr.c" /> - <ClCompile Include="..\Modules\zlib\zutil.c" /> <ClCompile Include="..\Modules\cjkcodecs\_codecs_cn.c" /> <ClCompile Include="..\Modules\cjkcodecs\_codecs_hk.c" /> <ClCompile Include="..\Modules\cjkcodecs\_codecs_iso2022.c" /> @@ -398,6 +390,20 @@ <ClCompile Include="..\Python\thread.c" /> <ClCompile Include="..\Python\traceback.c" /> </ItemGroup> + <ItemGroup Condition="$(IncludeExternals)"> + <ClCompile Include="..\Modules\zlibmodule.c" /> + <ClCompile Include="$(zlibDir)\adler32.c" /> + <ClCompile Include="$(zlibDir)\compress.c" /> + <ClCompile Include="$(zlibDir)\crc32.c" /> + <ClCompile Include="$(zlibDir)\deflate.c" /> + <ClCompile Include="$(zlibDir)\infback.c" /> + <ClCompile Include="$(zlibDir)\inffast.c" /> + <ClCompile Include="$(zlibDir)\inflate.c" /> + <ClCompile Include="$(zlibDir)\inftrees.c" /> + <ClCompile Include="$(zlibDir)\trees.c" /> + <ClCompile Include="$(zlibDir)\uncompr.c" /> + <ClCompile Include="$(zlibDir)\zutil.c" /> + </ItemGroup> <ItemGroup> <ClCompile Include="..\PC\dl_nt.c" /> </ItemGroup> @@ -433,4 +439,7 @@ <Target Name="_WarnAboutToolset" BeforeTargets="PrepareForBuild" Condition="$(PlatformToolset) != 'v140' and $(PlatformToolset) != 'v141'"> <Warning Text="Toolset $(PlatformToolset) is not used for official builds. Your build may have errors or incompatibilities." /> </Target> + <Target Name="_WarnAboutZlib" BeforeTargets="PrepareForBuild" Condition="!$(IncludeExternals)"> + <Warning Text="Not including zlib is not a supported configuration." /> + </Target> </Project> |