diff options
author | Zachary Ware <zachary.ware@gmail.com> | 2015-09-04 04:43:54 (GMT) |
---|---|---|
committer | Zachary Ware <zachary.ware@gmail.com> | 2015-09-04 04:43:54 (GMT) |
commit | b27f3c3e20991c7a97826e886bb43439e9276c34 (patch) | |
tree | 25f8f65840422c222dc4dc6bbbb54f6479f3bba2 /PCbuild/pcbuild.proj | |
parent | e74fe18ebb625224e0bd8f6885c3e65ac3bb29fa (diff) | |
download | cpython-b27f3c3e20991c7a97826e886bb43439e9276c34.zip cpython-b27f3c3e20991c7a97826e886bb43439e9276c34.tar.gz cpython-b27f3c3e20991c7a97826e886bb43439e9276c34.tar.bz2 |
Issue #24986: Allow building Python without external libraries on Windows
This modifies the behavior of the '-e' flag to PCbuild\build.bat: when '-e'
is not supplied, no attempt will be made to build extension modules that
require external libraries, even if the external libraries are present.
Also adds '--no-<module>' flags to PCbuild\build.bat, where '<module>' is
one of 'ssl', 'tkinter', or 'bsddb', to allow skipping just those modules
(if '-e' is given).
Diffstat (limited to 'PCbuild/pcbuild.proj')
-rw-r--r-- | PCbuild/pcbuild.proj | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj index 813831e..36621c9 100644 --- a/PCbuild/pcbuild.proj +++ b/PCbuild/pcbuild.proj @@ -5,8 +5,10 @@ <Platform Condition="'$(Platform)' == ''">Win32</Platform> <Configuration Condition="'$(Configuration)' == ''">Release</Configuration> <IncludeExtensions Condition="'$(IncludeExtensions)' == ''">true</IncludeExtensions> + <IncludeExternals Condition="'$(IncludeExternals)' == ''">true</IncludeExternals> <IncludeTests Condition="'$(IncludeTest)' == ''">true</IncludeTests> <IncludeSSL Condition="'$(IncludeSSL)' == ''">true</IncludeSSL> + <IncludeTkinter Condition="'$(IncludeTkinter)' == ''">true</IncludeTkinter> </PropertyGroup> <ItemDefinitionGroup> @@ -25,7 +27,7 @@ <!-- Parallel build is explicitly disabled for this project because it causes many conflicts between pythoncore and projects that depend - in pythoncore. Once the core DLL has been built, subsequent + on pythoncore. Once the core DLL has been built, subsequent projects will be built in parallel. --> <Projects Include="pythoncore.vcxproj"> @@ -40,10 +42,14 @@ <!-- _freeze_importlib --> <Projects Include="_freeze_importlib.vcxproj" /> <!-- Extension modules --> - <ExtensionModules Include="_bz2;_ctypes;_decimal;_elementtree;_lzma;_msi;_multiprocessing;_overlapped;_sqlite3;_tkinter;tix;pyexpat;select;unicodedata;winsound" /> + <ExtensionModules Include="_ctypes;_decimal;_elementtree;_msi;_multiprocessing;_overlapped;pyexpat;select;unicodedata;winsound" /> + <!-- Extension modules that require external sources --> + <ExternalModules Include="_bz2;_lzma;_sqlite3" /> <!-- _ssl will build _socket as well, which may cause conflicts in parallel builds --> - <ExtensionModules Include="_socket" Condition="!$(IncludeSSL)" /> - <ExtensionModules Include="_ssl;_hashlib" Condition="$(IncludeSSL)" /> + <ExtensionModules Include="_socket" Condition="!$(IncludeSSL) or !$(IncludeExternals)" /> + <ExternalModules Include="_ssl;_hashlib" Condition="$(IncludeSSL)" /> + <ExternalModules Include="_tkinter;tix" Condition="$(IncludeTkinter)" /> + <ExtensionModules Include="@(ExternalModules->'%(Identity)')" Condition="$(IncludeExternals)" /> <Projects Include="@(ExtensionModules->'%(Identity).vcxproj')" Condition="$(IncludeExtensions)" /> <!-- Test modules --> <TestModules Include="_ctypes_test;_testbuffer;_testcapi;_testembed;_testimportmultiple;_testmultiphase" /> |