bpo-21536: On Cygwin, C extensions must be linked with libpython (GH-… · python/cpython@c994c8f

@@ -138,7 +138,8 @@ environment variable, can be set using the new ``./configure --with-trace-refs``

138138

build option.

139139

(Contributed by Victor Stinner in :issue:`36465`.)

140140141-

On Unix, C extensions are no longer linked to libpython except on Android.

141+

On Unix, C extensions are no longer linked to libpython except on Android

142+

and Cygwin.

142143

It is now possible

143144

for a statically linked Python to load a C extension built using a shared

144145

library Python.

@@ -163,8 +164,8 @@ previous command fails (replace ``X.Y`` with the Python version).

163164164165

On the other hand, ``pkg-config python3.8 --libs`` no longer contains

165166

``-lpython3.8``. C extensions must not be linked to libpython (except on

166-

Android, case handled by the script); this change is backward incompatible on

167-

purpose.

167+

Android and Cygwin, whose cases are handled by the script);

168+

this change is backward incompatible on purpose.

168169

(Contributed by Victor Stinner in :issue:`36721`.)

169170170171

f-strings now support = for quick and easy debugging

@@ -1061,12 +1062,12 @@ Changes in the C API

10611062

instead.

10621063

(Contributed by Victor Stinner in :issue:`36728`.)

106310641064-

* On Unix, C extensions are no longer linked to libpython except on

1065-

Android. When Python is embedded, ``libpython`` must not be loaded with

1065+

* On Unix, C extensions are no longer linked to libpython except on Android

1066+

and Cygwin. When Python is embedded, ``libpython`` must not be loaded with

10661067

``RTLD_LOCAL``, but ``RTLD_GLOBAL`` instead. Previously, using

1067-

``RTLD_LOCAL``, it was already not possible to load C extensions which were

1068-

not linked to ``libpython``, like C extensions of the standard library built

1069-

by the ``*shared*`` section of ``Modules/Setup``.

1068+

``RTLD_LOCAL``, it was already not possible to load C extensions which

1069+

were not linked to ``libpython``, like C extensions of the standard

1070+

library built by the ``*shared*`` section of ``Modules/Setup``.

1070107110711072

* Use of ``#`` variants of formats in parsing or building value (e.g.

10721073

:c:func:`PyArg_ParseTuple`, :c:func:`Py_BuildValue`, :c:func:`PyObject_CallFunction`,