Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions Doc/whatsnew/3.8.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1458,6 +1458,25 @@ Changes in the C API
* The functions :c:func:`PyNode_AddChild` and :c:func:`PyParser_AddToken` now accept
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
------------------------

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Removes libpython38.a from standard Windows distribution.
4 changes: 1 addition & 3 deletions Tools/msi/README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -159,9 +159,7 @@ The following properties may be passed when building these projects.

/p:BuildForRelease=(true|false)
When true, adds extra verification to ensure a complete installer is
produced. For example, binutils is required when building for a release
to generate MinGW-compatible libraries, and the build will be aborted if
this fails. Defaults to false.
produced. Defaults to false.

/p:ReleaseUri=(any URI)
Used to generate unique IDs for the installers to allow side-by-side
Expand Down
21 changes: 0 additions & 21 deletions Tools/msi/dev/dev.wixproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,6 @@
<OutputType>Package</OutputType>
</PropertyGroup>
<Import Project="..\msi.props" />
<PropertyGroup>
<DefineConstants Condition="$(BuildForRelease) and $(SuppressMinGWLib) == ''">
$(DefineConstants);
IncludeMinGWLib=1;
</DefineConstants>
</PropertyGroup>
<ItemGroup>
<Compile Include="dev.wxs" />
<Compile Include="dev_files.wxs" />
Expand All @@ -31,20 +25,5 @@
</InstallFiles>
</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" &gt; "$(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" />
</Project>
3 changes: 0 additions & 3 deletions Tools/msi/dev/dev.wxs
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@
<ComponentGroupRef Id="dev_include" />
<ComponentGroupRef Id="dev_pyconfig" />
<ComponentGroupRef Id="dev_libs" />
<?ifdef IncludeMinGWLib ?>
<ComponentGroupRef Id="dev_mingw" />
<?endif ?>
<ComponentRef Id="OptionalFeature" />
</Feature>
</Product>
Expand Down
10 changes: 0 additions & 10 deletions Tools/msi/dev/dev_files.wxs
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,4 @@
</Component>
</ComponentGroup>
</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>