| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
00113 #
Add configure-time support for the COUNT_ALLOCS and CALL_PROFILE options
described at http://svn.python.org/projects/python/trunk/Misc/SpecialBuilds.txt
so that if they are enabled, they will be in that build's pyconfig.h, so that
extension modules will reliably use them
Not yet sent upstream
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
00112 #
Patch to support building both optimized vs debug stacks DSO ABIs, sharing
the same .py and .pyc files, using "_d.so" to signify a debug build of an
extension module.
Based on Debian's patch for the same,
http://patch-tracker.debian.org/patch/series/view/python2.6/2.6.5-2/debug-build.dpatch
(which was itself based on the upstream Windows build), but with some
changes:
* Debian's patch to dynload_shlib.c looks for module_d.so, then module.so,
but this can potentially find a module built against the wrong DSO ABI. We
instead search for just module_d.so in a debug build
* We remove this change from configure.in's build of the Makefile:
SO=$DEBUG_EXT.so
so that sysconfig.py:customize_compiler stays with shared_lib_extension='.so'
on debug builds, so that UnixCCompiler.find_library_file can find system
libraries (otherwise "make sharedlibs" fails to find system libraries,
erroneously looking e.g. for "libffi_d.so" rather than "libffi.so")
* We change Lib/distutils/command/build_ext.py:build_ext.get_ext_filename
to add the _d there, when building an extension. This way, "make sharedlibs"
can build ctypes, by finding the sysmtem libffi.so (rather than failing to
find "libffi_d.so"), and builds the module as _ctypes_d.so
* Similarly, update build_ext:get_libraries handling of Py_ENABLE_SHARED by
appending "_d" to the python library's name for the debug configuration
* We modify Modules/makesetup to add the "_d" to the generated Makefile
rules for the various Modules/*.so targets
This may introduce issues when building an extension that links directly
against another extension (e.g. users of NumPy?), but seems more robust when
searching for external libraries
* We don't change Lib/distutils/command/build.py: build.build_purelib to
embed plat_specifier, leaving it as is, as pure python builds should be
unaffected by these differences (we'll be sharing the .py and .pyc files)
* We introduce DEBUG_SUFFIX as well as DEBUG_EXT:
- DEBUG_EXT is used by ELF files (names and SONAMEs); it will be "_d" for
a debug build
- DEBUG_SUFFIX is used by filesystem paths; it will be "-debug" for a
debug build
Both will be empty in an optimized build. "_d" contains characters that
are valid ELF metadata, but this leads to various ugly filesystem paths (such
as the include path), and DEBUG_SUFFIX allows these paths to have more natural
names. Changing this requires changes elsewhere in the distutils code.
* We add DEBUG_SUFFIX to PYTHON in the Makefile, so that the two
configurations build parallel-installable binaries with different names
("python-debug" vs "python").
* Similarly, we add DEBUG_SUFFIX within python-config and
python$(VERSION)-config, so that the two configuration get different paths
for these.
See also patch 130 below
|
|
|
|
|
|
|
|
|
| |
00055 #
Systemtap support: add statically-defined probe points
Patch based on upstream bug: http://bugs.python.org/issue4111
fixed up by mjw and wcohen for 2.6.2, then fixed up by dmalcolm for 2.6.4
then rewritten by mjw (attachment 390110 of rhbz 545179), then reformatted
for 2.7rc1 by dmalcolm:
|
|
|
|
|
|
| |
00016 #
Remove an "-rpath $(LIBDIR)" argument from the linkage args in configure.in:
FIXME: is this for OSF, not Linux?
|
|
|
|
|
|
|
| |
(GH-16446). (#16454)
(cherry picked from commit 52d1b86bde2b772a76919c76991c326384954bf1)
Co-authored-by: Jesús Cea <jcea@jcea.es>
|
|
|
|
|
|
|
|
|
| |
(GH-13265)
In Python-2.7, we were only searching for bind_textdomain_codeset in
libc. We should have also checked for it in libintl. This change from
Mel Flynn https://bugs.python.org/file24918/python27-configure.in.patch
fixes that.
|
|
|
|
|
|
| |
"make tags" and "make TAGS" now also parse Modules/_io/*.c
and Modules/_io/*.h.
(cherry picked from commit 21a74a9d77c5ac628808b9faace18b824ca056f7)
|
|
|
|
|
| |
A fix for 69e96910153219b0b15a18323b917bd74336d229, which resulted in lchmod being disabled on all platforms, not just Linux.
(cherry picked from commit ed709d5699716bf7237856dc20aba321e2dfff6d)
|
|
|
|
|
|
|
|
| |
Per POSIX, `nice(3)` requires `unistd.h` and `exit(3)` requires `stdlib.h`.
Fixing the test will prevent false positives with pedantic compilers like clang.
(cherry picked from commit 90c6facebd5666fec85f125ee2795b48b30319a4)
Co-authored-by: ngie-eign <1574099+ngie-eign@users.noreply.github.com>
|
| |
|
|
|
| |
(cherry picked from commit a4414ef20b971e6803309acebfa85b1621ac625e)
|
|
|
|
|
| |
(cherry picked from commit 40caa05fa4d1810a1a6bfc34e0ec930c351089b7)
Co-authored-by: Benjamin Peterson <benjamin@python.org>
|
|
|
|
|
|
|
| |
below 1.8.5. (GH-8744) (GH-8838)
(cherry picked from commit 4c8555773a801f957297132a92c0acb382d640e4)
|
|
|
| |
Add -g to LDFLAGS when compiling with LTO to get debug symbols.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These include:
- bpo-32726: Provide an additional, more modern macOS installer variant that
supports macOS 10.9+ systems in 64-bit mode only. Upgrade the supplied
third-party libraries to OpenSSL 1.0.2n and SQLite 3.22.0. The 10.9+
installer now supplies its own private copy of Tcl/Tk 8.6.8.
- bpo-24414: Default macOS deployment target is now set by ``configure`` to
the build system's OS version (as is done by Python 3), not ``10.4``;
override with, for example, ``./configure MACOSX_DEPLOYMENT_TARGET=10.4``.
- bpo-19019: All 2.7 macOS installer variants now supply their own version
of ``OpenSSL 1.0.2``; the Apple-supplied SSL libraries and root
certificates are not longer used. The ``Installer Certificate`` command
in ``/Applications/Python 2.7`` may be used to download and install a
default set of root certificates from the third-party ``certifi`` package.
- bpo-11485: python.org macOS Pythons no longer supply a default SDK value
(e.g. ``-isysroot /``) or specific compiler version default (e.g.
``gcc-4.2``) when building extension modules. Use ``CC``, ``SDKROOT``,
and ``DEVELOPER_DIR`` environment variables to override compilers or to
use an SDK. See Apple's ``xcrun`` man page for more info.
- prepare for pending Apple removal of 32-bit support in future macOS release
|
|
|
|
|
|
|
|
| |
(GH-5284) (#5295)
glibc is deprecating libcrypt in favor of libxcrypt, however python assumes
that crypt.h will always be included. This change makes the header inclusion
explicit when libxcrypt is present on the system.
(cherry picked from commit e768c86ef442ef89004089a8a34ce5909ffb90f2)
|
|
|
| |
(cherry picked from commit 894ebd065e02debf20c0657d26020ecc42b7534f)
|
|
|
|
|
|
|
|
|
|
|
| |
(#4213)
Modify the code to use ncurses is_pad() instead of checking WINDOW
_flags field. If your platform does not provide the is_pad(), the
existing way that checks the field will be enabled.
Note: This change does not drop support for platforms where do not
have both WINDOW _flags field and is_pad().
(cherry picked from commit 8bc7d63560024681dce9f40445f2877b2987e92c)
|
|
|
| |
(cherry picked from commit baac01e629d90f63dfde6b5cc433f4bc65c5feeb)
|
|
|
|
|
| |
behavior. (#2705)
See also 1f29cefc87c4c2ee629367ebe97a287d8e0b3e29. The configure.ac change was omitted from the earlier change...
|
|
|
|
|
|
|
| |
Include sys/sysmacros.h for major(), minor(), and makedev(). GNU C libray
plans to remove the functions from sys/types.h.
Signed-off-by: Christian Heimes <christian@python.org>.
(cherry picked from commit 75b961869a1184895c9d5bf41a57f3c985622662)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Don't rebuild generated files based on file modification time
anymore, the action is now explicit. Replace "make touch"
with "make regen-all".
Changes:
* Remove "make touch", Tools/hg/hgtouch.py and .hgtouch
* Add a new "make regen-all" command to rebuild all generated files
* Add subcommands to only generate specific files:
- regen-ast: Include/Python-ast.h and Python/Python-ast.c
- regen-grammar: Include/graminit.h and Python/graminit.c
- regen-opcode-targets: Python/opcode_targets.h
* Add PYTHON_FOR_REGEN variable
* pgen is now only built by by "make regen-grammar"
* Add $(srcdir)/ prefix to paths to source files to handle correctly
compilation outside the source directory
|
|
|
|
| |
Don't test if .git/HEAD file exists, but only if the .git file (or
directory) exists.
|
|
|
|
|
|
|
|
|
|
|
| |
Based on commit 5c4b0d063aba0a68c325073f5f312a2c9f40d178 by Ned
Deily, which is based on original patches by Brett Cannon and Steve
Dower.
Remove also the private _Py_svnversion() function and SVNVERSION
variable.
Note: Py_SubversionRevision() and Py_SubversionShortBranch() are
unchanged, they are part of the public API.
|
|
|
|
|
|
|
|
|
|
|
| |
Backport enhancements from master, commits:
* 9c4bfa6669e220efdd379b9f8e7db32bb4e25e72: "make tags": remove -t
option of ctags. The option was kept for backward compatibility,
but it was completly removed recently. Patch written by Stéphane
Wirtel.
* cf0ac6a71ae51249a05521f49c1a0fabbb948488: Fix "make tags": set
locale to C to call sort
* 8a543c0bc7347d5b333f334d157bf4a7cd33c14a: `make tags` fixes (GH-717)
|
|
|
|
|
|
| |
The presence of the ``--enable-optimizations`` flag is indicated by the
value of ``$enableval``, but the configure script was checking ``$withval``,
resulting in the ``--enable-optimizations`` flag being effectively ignored.
(cherry picked from commit 8cea5929f52801b0ce5928b46ef836e99a24321a)
|
| |
|
|
|
|
|
| |
The ld_so_aix script and python.exp file are created in the build directory.
Patch by Tristan Carel and Michael Haubenwallner.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Too many build tool chains do not properly support it, including building
and linking an executable fine that simply segfaults when you try to run
it (such as debian jessie 8.5's gcc 4.9). On others where it does appear
to build (ubuntu 16.04's gcc 5.4) there are still test_distutils and test_gdb
failures to deal with.
We're not going to spend time attempting to maintain a complicated white list
of what does and doesn't work in our configure.ac file.
|
|
|
|
|
|
| |
required for PGO linking - to be a configure time error rather than
make time when --with-optimizations is enabled. Also improve our
ability to find the llvm-profdata tool on MacOS and some Linuxes.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The dependendency on the $(PGEN) variable must only be
set when not cross-compiling. When cross-compiling,
$(PGEN) will not be used, so no need to build it.
Patch by Thomas Perl.
|
|
|
|
| |
#24557)
|
|
|
|
|
|
|
| |
enable link time optimizations at build time during a make profile-opt.
Some compilers and toolchains are known to not produce stable code when
using LTO, be sure to test things thoroughly before relying on it.
It can provide a few % speed up over profile-opt alone.
|
|
|
|
| |
Most fixes to Doc/ and Lib/ directories by Ville Skyttä.
|
|
|
|
| |
Patches by Jonas Wagner and Xavier de Gaye.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
profile data.
Thanks to Alecsandru Patrascu of Intel for the initial patch.
|
|
|
|
| |
positives with the -flto option (gcc >= 4.9.0 and clang).
|
| |
|
| |
|
|
|
|
|
| |
availability of the function is checked during the compilation. Patch written
by Bernard Spil.
|
| |
|