bpo-37351: Removes libpython38.a from standard Windows distribution (#14276)
This commit is contained in:
parent
e56a123fd0
commit
f5690925df
|
@ -1461,6 +1461,25 @@ Changes in the C API
|
||||||
* The functions :c:func:`PyNode_AddChild` and :c:func:`PyParser_AddToken` now accept
|
* The functions :c:func:`PyNode_AddChild` and :c:func:`PyParser_AddToken` now accept
|
||||||
two additional ``int`` arguments *end_lineno* and *end_col_offset*.
|
two additional ``int`` arguments *end_lineno* and *end_col_offset*.
|
||||||
|
|
||||||
|
.. highlight:: shell
|
||||||
|
|
||||||
|
* The :file:`libpython38.a` file to allow MinGW tools to link directly against
|
||||||
|
:file:`python38.dll` is no longer included in the regular Windows distribution.
|
||||||
|
If you require this file, it may be generated with the ``gendef`` and
|
||||||
|
``dlltool`` tools, which are part of the MinGW binutils package::
|
||||||
|
|
||||||
|
gendef python38.dll > tmp.def
|
||||||
|
dlltool --dllname python38.dll --def tmp.def --output-lib libpython38.a
|
||||||
|
|
||||||
|
The location of an installed :file:`pythonXY.dll` will depend on the
|
||||||
|
installation options and the version and language of Windows. See
|
||||||
|
:ref:`using-on-windows` for more information. The resulting library should be
|
||||||
|
placed in the same directory as :file:`pythonXY.lib`, which is generally the
|
||||||
|
:file:`libs` directory under your Python installation.
|
||||||
|
|
||||||
|
.. highlight:: python3
|
||||||
|
|
||||||
|
|
||||||
CPython bytecode changes
|
CPython bytecode changes
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Removes libpython38.a from standard Windows distribution.
|
|
@ -159,9 +159,7 @@ The following properties may be passed when building these projects.
|
||||||
|
|
||||||
/p:BuildForRelease=(true|false)
|
/p:BuildForRelease=(true|false)
|
||||||
When true, adds extra verification to ensure a complete installer is
|
When true, adds extra verification to ensure a complete installer is
|
||||||
produced. For example, binutils is required when building for a release
|
produced. Defaults to false.
|
||||||
to generate MinGW-compatible libraries, and the build will be aborted if
|
|
||||||
this fails. Defaults to false.
|
|
||||||
|
|
||||||
/p:ReleaseUri=(any URI)
|
/p:ReleaseUri=(any URI)
|
||||||
Used to generate unique IDs for the installers to allow side-by-side
|
Used to generate unique IDs for the installers to allow side-by-side
|
||||||
|
|
|
@ -7,12 +7,6 @@
|
||||||
<OutputType>Package</OutputType>
|
<OutputType>Package</OutputType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="..\msi.props" />
|
<Import Project="..\msi.props" />
|
||||||
<PropertyGroup>
|
|
||||||
<DefineConstants Condition="$(BuildForRelease) and $(SuppressMinGWLib) == ''">
|
|
||||||
$(DefineConstants);
|
|
||||||
IncludeMinGWLib=1;
|
|
||||||
</DefineConstants>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="dev.wxs" />
|
<Compile Include="dev.wxs" />
|
||||||
<Compile Include="dev_files.wxs" />
|
<Compile Include="dev_files.wxs" />
|
||||||
|
@ -31,20 +25,5 @@
|
||||||
</InstallFiles>
|
</InstallFiles>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<Target Name="BuildMinGWLib"
|
|
||||||
Inputs="$(BuildPath)$(PyDllName).dll"
|
|
||||||
Outputs="$(BuildPath)lib$(PyDllName).a"
|
|
||||||
AfterTargets="PrepareForBuild"
|
|
||||||
Condition="$(BuildForRelease) and $(SuppressMinGWLib) == ''">
|
|
||||||
<!-- Build libpython##.a as part of this project. This requires gendef and dlltool on the path. -->
|
|
||||||
<PropertyGroup>
|
|
||||||
<_DllToolOpts>-m i386 --as-flags=--32</_DllToolOpts>
|
|
||||||
<_DllToolOpts Condition="$(Platform) == 'x64'">-m i386:x86-64</_DllToolOpts>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<Exec Command='gendef - "$(BuildPath)$(PyDllName).dll" > "$(IntermediateOutputPath)mingwlib.def"' ContinueOnError="false" />
|
|
||||||
<Exec Command='dlltool --dllname $(PyDllName).dll --def "$(IntermediateOutputPath)mingwlib.def" --output-lib "$(BuildPath)lib$(PyDllName).a" $(_DllToolOpts)' />
|
|
||||||
</Target>
|
|
||||||
|
|
||||||
<Import Project="..\msi.targets" />
|
<Import Project="..\msi.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
@ -10,9 +10,6 @@
|
||||||
<ComponentGroupRef Id="dev_include" />
|
<ComponentGroupRef Id="dev_include" />
|
||||||
<ComponentGroupRef Id="dev_pyconfig" />
|
<ComponentGroupRef Id="dev_pyconfig" />
|
||||||
<ComponentGroupRef Id="dev_libs" />
|
<ComponentGroupRef Id="dev_libs" />
|
||||||
<?ifdef IncludeMinGWLib ?>
|
|
||||||
<ComponentGroupRef Id="dev_mingw" />
|
|
||||||
<?endif ?>
|
|
||||||
<ComponentRef Id="OptionalFeature" />
|
<ComponentRef Id="OptionalFeature" />
|
||||||
</Feature>
|
</Feature>
|
||||||
</Product>
|
</Product>
|
||||||
|
|
|
@ -29,14 +29,4 @@
|
||||||
</Component>
|
</Component>
|
||||||
</ComponentGroup>
|
</ComponentGroup>
|
||||||
</Fragment>
|
</Fragment>
|
||||||
|
|
||||||
<?ifdef IncludeMinGWLib ?>
|
|
||||||
<Fragment>
|
|
||||||
<ComponentGroup Id="dev_mingw">
|
|
||||||
<Component Id="libs_libpython.a" Directory="libs" Guid="*">
|
|
||||||
<File Id="libs_libpython.a" Name="libpython$(var.MajorVersionNumber)$(var.MinorVersionNumber).a" KeyPath="yes" />
|
|
||||||
</Component>
|
|
||||||
</ComponentGroup>
|
|
||||||
</Fragment>
|
|
||||||
<?endif ?>
|
|
||||||
</Wix>
|
</Wix>
|
||||||
|
|
Loading…
Reference in New Issue