Commit Graph

178 Commits

Author SHA1 Message Date
Stefan Behnel 9538bc9185
bpo-39432: Implement PEP-489 algorithm for non-ascii "PyInit_*" symbol names in distutils (GH-18150)
Make it export the correct init symbol also on Windows.



https://bugs.python.org/issue39432
2020-02-04 07:24:30 -08:00
Bernhard M. Wiedemann 0d30ae1a03 bpo-36302: Sort list of sources (GH-12341)
When building packages (e.g. for openSUSE Linux)
(random) filesystem order of input files
influences ordering of functions in the output .so files.
Thus without the patch, builds (in disposable VMs) would usually differ.

Without this patch, all callers have to be patched individually
https://github.com/dugsong/libdnet/pull/42
https://github.com/sass/libsass-python/pull/212
https://github.com/tahoe-lafs/pycryptopp/pull/41
https://github.com/yt-project/yt/pull/2206
https://github.com/pyproj4/pyproj/pull/142
https://github.com/pytries/datrie/pull/49
https://github.com/Roche/pyreadstat/pull/37
but that is an infinite effort.

See https://reproducible-builds.org/ for why this matters.
2019-08-01 15:18:03 +02:00
E. M. Bray c994c8fc19 bpo-21536: On Cygwin, C extensions must be linked with libpython (GH-13549)
It is also possible to link against a library or executable with a
statically linked libpython, but not both with the same DLL.  In fact
building a statically linked python is currently broken on Cygwin
for other (related) reasons.

The same problem applies to other POSIX-like layers over Windows
(MinGW, MSYS) but Python's build system does not seem to attempt
to support those platforms at the moment.
2019-05-24 17:33:47 +02:00
xdegaye 254b309c80 bpo-21536: On Android, C extensions are linked to libpython (GH-12989) 2019-04-29 09:27:40 +02:00
Victor Stinner 8c3ecc6bac
bpo-21536: C extensions are no longer linked to libpython (GH-12946)
On Unix, C extensions are no longer linked to libpython.

It is now possible to load a C extension built using a shared library
Python with a statically linked Python.

When Python is embedded, libpython must not be loaded with
RTLD_LOCAL, but RTLD_GLOBAL instead. Previously, using RTLD_LOCAL, it
was already not possible to load C extensions which were not linked
to libpython, like C extensions of the standard library built by the
"*shared*" section of Modules/Setup.

distutils, python-config and python-config.py have been modified.
2019-04-25 20:13:10 +02:00
Steve Dower 85e102a2b0
bpo-35299: Fixed sysconfig and distutils during PGO profiling (GH-11744) 2019-02-04 17:15:13 -08:00
Serhiy Storchaka 34fd4c2019
bpo-35133: Fix mistakes when concatenate string literals on different lines. (GH-10284)
Two kind of mistakes:

1. Missed space. After concatenating there is no space between words.

2. Missed comma. Causes unintentional concatenating in a list of strings.
2018-11-05 16:20:25 +02:00
Benjamin Peterson 4eaf7f9490 fixes bpo-31866: remove code pertaining to AtheOS support (#4115)
We stop support this OS in 2007 with commit
19fab761b7. Let's finish.
2017-10-25 23:55:14 -07:00
Zachary Ware 49ce74efe8 Remove all mention of Windows IA-64 support (GH-3389)
It was mostly removed long ago.
2017-09-06 15:45:25 -07:00
Zachary Ware 3839d99b79 Issue #13756: Fix building extensions modules on Cygwin
Patch by Roumen Petrov, based on original patch by Jason Tishler.
2016-10-01 16:15:09 -05:00
Benjamin Peterson 095e32bfc5 merge 3.5 (#1703178) 2016-09-28 23:17:04 -07:00
Benjamin Peterson 4254e8c548 build_ext: correctly parse the link_objects user option (closes #1703178)
Patch by Valerie Lambert.
2016-09-28 23:13:58 -07:00
Vinay Sajip dd917f84e3 Closes #27904: Improved logging statements to defer formatting until needed. 2016-08-31 08:22:29 +01:00
doko@ubuntu.com 6ada01234d - Issue #26884: Fix linking extension modules for cross builds.
Patch by Xavier de Gaye.
2016-06-05 00:41:58 +02:00
Steve Dower fd3664be00 Issue #23970: Adds distutils._msvccompiler for new Visual Studio versions. 2015-05-23 09:02:50 -07:00
Steve Dower 09bd9ec9b3 Fixes distutils adding/expecting too many _d suffixes. 2014-12-15 20:45:23 -08:00
Steve Dower 65e4cb10d9 Issue #22919: Windows build updated to support VC 14.0 (Visual Studio 2015), which will be used for the official 3.5 release. 2014-11-22 12:54:57 -08:00
doko@ubuntu.com 9816619c5b - Issue #17219: Add library build dir for Python extension cross-builds. 2014-10-02 02:12:34 +02:00
doko@ubuntu.com cef3bdc01d - Issue #17219: Add library build dir for Python extension cross-builds. 2014-10-02 02:10:47 +02:00
Antoine Pitrou afa3153b27 Remove pointless "vile hack" that can cause the build step to fail when some extension modules can't be imported.
See issue #5309 for the build failures, issue #458343 for the original motivation.
2014-09-30 14:58:22 +02:00
Antoine Pitrou 2c0a916061 Issue #5309: distutils' build and build_ext commands now accept a ``-j``
option to enable parallel building of extension modules.
2014-09-26 23:31:59 +02:00
Benjamin Peterson df0eb95b57 remove various dead version checks (closes #22349)
Patch from Thomas Kluyver.
2014-09-06 17:24:12 -04:00
Stefan Krah 748f40d162 Issue #9709: Revert 97fb852c5c26. Many extensions are not using PyMODINIT_FUNC. 2014-01-28 15:04:40 +01:00
Stefan Krah 5aa08ca375 Issue #9709: Stop adding PyInit_" + module_name' to export_symbols. This is
already done by PyMODINIT_FUNC.
2013-12-03 13:55:20 +01:00
Antoine Pitrou 61e10a5efe Issue #4366: Fix building extensions on all platforms when --enable-shared is used. 2013-09-29 01:49:07 +02:00
Antoine Pitrou 643238eb53 Issue #4366: Fix building extensions on all platforms when --enable-shared is used. 2013-09-29 01:48:40 +02:00
doko@ubuntu.com 6d3d0fe0b2 - Issue #16754: Fix the incorrect shared library extension on linux. Introduce
two makefile macros SHLIB_SUFFIX and EXT_SUFFIX. SO now has the value of
  SHLIB_SUFFIX again (as in 2.x and 3.1). The SO macro is removed in 3.4.
2013-03-21 13:39:52 -07:00
doko@ubuntu.com 1621d77fc8 - Issue #16754: Fix the incorrect shared library extension on linux. Introduce
two makefile macros SHLIB_SUFFIX and EXT_SUFFIX. SO now has the value of
  SHLIB_SUFFIX again (as in 2.x and 3.1). The SO macro is removed in 3.4.
2013-03-21 13:31:41 -07:00
doko@ubuntu.com d5537d071c - Issue #16754: Fix the incorrect shared library extension on linux. Introduce
two makefile macros SHLIB_SUFFIX and EXT_SUFFIX. SO now has the value of
  SHLIB_SUFFIX again (as in 2.x and 3.1). The SO macro is removed in 3.4.
2013-03-21 13:21:49 -07:00
Vinay Sajip 998b105c68 Closes #16116: Merged fix from 3.3. 2012-10-23 20:27:43 +01:00
Vinay Sajip e87acc1f38 Issue #16116: Now uses corrected include and library paths when building C extensions in a venv. 2012-10-23 20:26:14 +01:00
Jesus Cea d17833d360 Closes #16135: Removal of OS/2 support (distutils) 2012-10-11 01:20:12 +02:00
Vinay Sajip 8cffdd9ca2 Closes #15367: Corrected computation of include locations for source builds on Windows. Thanks to Richard Oudkerk for the bug report and patch. 2012-07-16 18:30:03 +01:00
Brian Curtin 401f9f3d32 Fix #13210. Port the Windows build from VS2008 to VS2010. 2012-05-13 11:19:23 -05:00
Éric Araujo 1d175f7768 Merge fixes for #1326113 and #12297 from 3.2 2012-02-15 17:13:26 +01:00
Éric Araujo b2f5c0a4c4 Fix parsing of build_ext --libraries option (#1326113) 2012-02-15 16:44:37 +01:00
Victor Stinner e67474725b Issue #12326: refactor usage of sys.platform
* Use str.startswith(tuple): I didn't know this Python feature, Python rocks!
 * Replace sometimes sys.platform.startswith('linux') with
   sys.platform == 'linux'
 * sys.platform doesn't contain the major version on Cygwin on Mac OS X
   (it's just 'cygwin' and 'darwin')
2011-08-21 00:39:18 +02:00
Senthil Kumaran 7c9719cf74 Fix closes Issue11439 Remove the SVN keywords from the code as it is no longer applicable in hg. Patch Contributed by Neil Muller. 2011-07-28 22:32:49 +08:00
Éric Araujo 60532bd6b6 Fix build_ext with VS 8.0. Patch by Hirokazu Yamamoto (#9558). 2010-12-15 21:07:22 +00:00
Barry Warsaw 8cf4eae522 First (uncontroversial) part of issue 9807.
* Expose the build flags to Python as sys.abiflags
* Shared library libpythonX.Y<abiflags>.so
* python-config --abiflags
* Make two distutils tests that failed with --enable-shared (even before this
  patch) succeed.
* Fix a few small style issues.
2010-10-16 01:04:07 +00:00
Antoine Pitrou 8e6b407d6f Issue #941346: Improve the build process under AIX and allow Python to
be built as a shared library.  Patch by Sébastien Sablé.
2010-09-10 19:44:44 +00:00
Tarek Ziadé 3679727939 reverted distutils its 3.1 state. All new work is now happening in disutils2, and distutils is now feature-frozen. 2010-07-22 12:50:05 +00:00
Tarek Ziadé 8b441d0dcd Merged revisions 77759,77761 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77759 | tarek.ziade | 2010-01-26 22:21:54 +0100 (Tue, 26 Jan 2010) | 1 line

  reintroduced the names in Distutils for APIs that were relocated
........
  r77761 | tarek.ziade | 2010-01-26 23:46:15 +0100 (Tue, 26 Jan 2010) | 1 line

  added local get_platform/set_platform APIs in distutils.sysconfig
........
2010-01-29 11:46:31 +00:00
Tarek Ziadé edacea30e4 Merged revisions 77704,77752 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77704 | tarek.ziade | 2010-01-23 10:23:15 +0100 (Sat, 23 Jan 2010) | 1 line

  taking sysconfig out of distutils
........
  r77752 | tarek.ziade | 2010-01-26 00:19:56 +0100 (Tue, 26 Jan 2010) | 1 line

  switched the call order so this call works without suffering from issue #7774
........
2010-01-29 11:41:03 +00:00
Tarek Ziadé 88e2c5d35a Merged revisions 76956 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76956 | tarek.ziade | 2009-12-21 02:22:46 +0100 (Mon, 21 Dec 2009) | 1 line

  massive import cleaning in Distutils
........
2009-12-21 01:49:00 +00:00
Antoine Pitrou 6103ab1d0b Remove AtheOS support, as per PEP 11 (which claims that all code was removed in Python 3.0). 2009-10-24 20:11:21 +00:00
Tarek Ziadé 6504c664dc Merged revisions 73946 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r73946 | tarek.ziade | 2009-07-11 12:55:27 +0200 (Sat, 11 Jul 2009) | 1 line

  fixed #6459: distutils.command.build_ext.get_export_symbols now uses 'PyInit'
........
2009-07-11 10:59:56 +00:00
Tarek Ziadé 26f0c64587 Merged revisions 73901 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r73901 | tarek.ziade | 2009-07-09 09:42:42 +0200 (Thu, 09 Jul 2009) | 1 line

  PendingDeprecationWarning -> DeprecationWarning in build_ext
........
2009-07-09 07:46:10 +00:00
Tarek Ziadé 556934b385 Merged revisions 73895 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r73895 | tarek.ziade | 2009-07-09 00:40:51 +0200 (Thu, 09 Jul 2009) | 1 line

  Sets the compiler attribute to keep the old behavior for third-party packages.
........
2009-07-08 22:42:43 +00:00
Tarek Ziadé dd07ebb44a Merged revisions 73864 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r73864 | tarek.ziade | 2009-07-06 14:50:46 +0200 (Mon, 06 Jul 2009) | 1 line

  Fixed #6377: distutils compiler switch ignored (and added a deprecation warning if compiler is not used as supposed = a string option)
........
2009-07-06 13:52:17 +00:00