Commit Graph

415 Commits

Author SHA1 Message Date
Xiang Zhang 7dcea4c876 bpo-31379: Added $(RUNSHARED) to run_profile_task (#3422) 2017-09-08 09:56:06 +08:00
Christian Heimes 8092719e93 [2.7] Update multissl test helper (GH-3349) (#3416)
Signed-off-by: Christian Heimes <christian@python.org>.
(cherry picked from commit d3b9f97e6d)
2017-09-07 10:12:22 -07:00
Victor Stinner cce1cb9180 bpo-30871: Add test.pythoninfo (#3174) (#3175)
* bpo-30871: Add test.pythoninfo (#3075)

* Add Lib/test/pythoninfo.py: script collecting various informations
  about Python to help debugging test failures.
* regrtest: remove sys.hash_info and sys.flags from header.
* Travis CI, Appveyor: run pythoninfo before tests
(cherry picked from commit b907abc885)

* bpo-30871: pythoninfo: add expat and _decimal (#3121)

* bpo-30871: pythoninfo: add expat and _decimal

* Remove _decimal.__version__

The string is hardcoded, not really interesting.

(cherry picked from commit f6ebd838f0)

* bpo-30871: Add "make pythoninfo" (#3120)

(cherry picked from commit a3a01a2fce)

* bpo-30871: pythoninfo: more sys, os, time data (#3130)

* bpo-30871: pythoninfo: more sys, os, time data

PythonInfo now converts types other than intger to string by default.

* fix typo

(cherry picked from commit ad7eaed543)

* bpo-31231: Fix pythoninfo in Travis config (#3134)

bpo-31231, bpo-30871: Replace "./python -m test.pythoninfo" with
"make pythoninfo", since macOS uses ./python.exe.
(cherry picked from commit 92b1f90143)

(cherry picked from commit 29d007bb67)
2017-08-22 03:40:26 +02:00
torsava a473a73d0c [2.7] bpo-29243: Fix Makefile with respect to --enable-optimizations (GH-1478) (#1522)
* bpo-29243: Fix Makefile with respect to --enable-optimizations

When using the Profile Guided Optimization (./configure --enable-optimizations)
Python is built not only during `make` but rebuilt again during `make test`,
`make install` and others. This patch fixes the issue.

Note that this fix produces no change at all in the Makefile if configure is
run witout --enable-optimizations.

* !squash.
(cherry picked from commit a1054c3b00)
2017-05-09 18:04:29 +02:00
Victor Stinner 453a685702 bpo-30283: Backport regrtest features from master to 2.7 (#1516)
* regrtest: add --slowest alias to --slow

* make buildbottest: add --slowest option

* regrtest: add "- " prefix to --slowest output

* regrtest: Fix an outdated comment

* regrtest: replace PermissionError

Replace PermissionError with OSError and check on exc.errno.
PermissionError was added to Python 3.3.

* regrtest: add -3 -tt options to run Python scripts

* regrtest: backport --list-tests option

* regrtest: backport "Tests result: xxx" summary

* regrtest: backport total duration

* regrtest: add timestamp to the progress

* regrtest: describe previous test state

* Add the state of the test: passed, failed, etc.
* If a test took longer than 30 seconds, log its execution time

* regrtest: -jN logs running workers

* regrtest: mention if tests are run in parallel

* regrtest: parallel mode is more verbose during wait

Display running tests every 30 seconds if no test completed in the
meanwhile.

* test_regrtest: fix typo in SubprocessRun
2017-05-09 17:06:34 +02:00
Victor Stinner 8a19eb24c9 bpo-23404: make touch becomes make regen-all (#1466)
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
2017-05-05 03:14:23 +02:00
Victor Stinner 2c7085fd7b bpo-27593: Get SCM build info from git instead of hg (#1327)
Based on commit 5c4b0d063a 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.
2017-05-02 16:55:50 +02:00
Serhiy Storchaka 6bed8f95d7 bpo-30207: Install the Lib/test/support directory. (#1369) 2017-05-01 19:53:45 +03:00
Victor Stinner 5f4056a3c9 Fix "make tags" command (#1337)
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)
2017-04-28 03:41:40 +02:00
Martin Panter f75a2ebbac Issue #10656: Fix out-of-tree building on AIX
The ld_so_aix script and python.exp file are created in the build directory.
Patch by Tristan Carel and Michael Haubenwallner.
2016-11-20 09:31:41 +00:00
Victor Stinner c1658b21cb Issue #28258: Explain the LC_ALL change in a comment 2016-09-29 22:33:02 +02:00
Serhiy Storchaka dbc995a279 Issue #28258: Fixed build with Estonian locale (distclean target in
Makefile).  Patch by Arfrever Frehtes Taifersar Arahesis.
2016-09-29 20:46:45 +03:00
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D) d02905df87 Fix make buildbottest to not re-trigger a profile-opt build. issue28035. 2016-09-09 12:25:27 -07:00
Gregory P. Smith 6d8fdfc84b Issue #26359: Add the --with-optimizations flag. 2016-09-07 23:28:23 -07:00
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D) 93d1a7051f Fixes issue26307: The profile-opt build now applys PGO to the built-in modules. 2016-09-07 01:05:59 +00:00
Martin Panter bc82de084c Issue #27641: Comment out regeneration rules when cross compiling 2016-07-29 05:52:32 +00:00
Martin Panter 801110b303 Issue #27490: Do not build pgen when cross-compiling
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.
2016-07-28 01:28:27 +00:00
Martin Panter ed722d9e39 Issue #27229: Comment in middle of shell command fails on BSD and OS X 2016-06-07 01:07:32 +00:00
Martin Panter ab1455829b Issue #27229: Fix in-tree cross-build rule, by Xavier de Gaye 2016-06-07 00:27:17 +00:00
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D) f9f8e18af3 Exclude unittests from the make profile-opt training run that either
take a rediculious amount of time to run, fail or provide little use
to the profile feedback.  (similar to what is already done in 3.5 and
by major Linux distro builds own profiling runs)
2016-06-02 23:50:07 +00:00
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D) c543a0fc3b Issue #25702: A --with-lto configure option has been added that will
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.
2016-06-02 23:44:40 +00:00
Martin Panter b1d867f149 Issue #27076: Doc, comment and test function name spelling fixes
Most fixes to Doc/ and Lib/ directories by Ville Skyttä.
2016-05-26 05:28:50 +00:00
Martin Panter e9ee317062 Issue #22359: Avoid recursive $(MAKE); disable running cross-compiled pgen
Patches by Jonas Wagner and Xavier de Gaye.
2016-04-23 00:58:44 +00:00
doko@ubuntu.com 6ce9f4b9a4 Revert the last change:
Makefile.pre.in:
  - Modules/_math.o: Build using PY_CORE_CFLAGS as every extension
2016-03-23 13:17:23 +01:00
doko@ubuntu.com ed282af85f Makefile.pre.in:
- Modules/_math.o: Build using PY_CORE_CFLAGS as every extension
  - profile-opt: Fix bashism
2016-03-23 12:55:48 +01:00
Martin Panter 83e9b57632 Issue #24421: Compile _math.c separately to avoid race condition 2016-02-03 05:19:44 +00:00
Zachary Ware cb868363c2 Issue #25925: Backport C coverage reporting Makefile targets
Originally added by Christian Heimes in 85ec2b5bfcd2.

Initial patch for the backport by Alecsandru Patrascu.
2016-01-20 00:11:52 -06:00
Zachary Ware 6ed42ea08b Issue #25827: Add support for ICC to configure 2015-12-21 11:43:03 -06:00
Victor Stinner 04627633ed Issue #25696: Don't ignore errors in 'make bininstall' on creating $(LIBPC) directory 2015-12-13 21:25:42 +01:00
Victor Stinner 15a6c4239c Issue #25696: Fix installation of Python on UNIX with make -j9. 2015-12-13 21:19:28 +01:00
Brett Cannon 9537478463 Issue #25188: Add -P/--pgo to test.regrtest for PGO building.
Initial patch by Alecsandru Patrascu of Intel.
2015-10-02 16:21:34 -07:00
Brett Cannon 4ff151a72a Issue #24915: Make PGO builds support Clang and use the test suite for
profile data.

Thanks to Alecsandru Patrascu of Intel for the initial patch.
2015-09-18 15:09:42 -07:00
Benjamin Peterson 2c992a0788 backport computed gotos (#4753) 2015-05-28 12:45:31 -05:00
doko@ubuntu.com 9e7ece271f - Use PLATDIR for the platform directory everywhere (refactoring only) 2015-04-13 21:55:08 +02:00
Ned Deily 3f1d0b3121 Issue 22878: PEP 477 - "make install" and "make altinstall" integration
The backport of ensurepip to 2.7.9 allows pip to optionally be installed
or upgraded using the bundled pip provided by the new ensurepip module.
The option can be specified persistently using the configure option:

    ./configure --with-ensurepip[=upgrade|install|no]

It can also be overridden on either the "install" or "altinstall" targets:

    make [alt]install ENSUREPIP=[upgrade|install|no]

For Python 2, the default option is "no" (do not install pip).
2014-11-20 02:11:03 -08:00
Donald Stufft 8aaff54db3 Implement PEP 477 - Backport ensurepip (PEP 453) to 2.7
* Backports ensurepip to the 2.7 branch
* Backports some of the improved documentation to the 2.7 branch.
* Adds a private backport of the 3.x mock library as test._mock_backport
  to enable saner testing of ensurepip.

Key Differences from 3.x:

* Ensurepip does not have any Makefile integration, specifically
  it is not ran by default in the Makefile.
* There is no venv module in 2.7, so downstream distributors can
  completely disable ensurepip, ideally with a message redirecting
  to the correct way to install pip.
* To match the ``python`` command in 2.7, ensurepip will install
  the unversioned ``pip`` command as well.
* No-op and hide --default-pip and add --no-default-pip to restore
  the 3.x behavor on 2.7.
2014-11-11 10:24:11 -05:00
Ned Deily 8cb673816b Issue #21166: fix typo in comment 2014-08-23 18:09:25 -07:00
Ned Deily 983df8688d Issue #21166: Prevent possible segfaults and other random failures of
python --generate-posix-vars in pybuilddir.txt build target by ensuring
that pybuilddir.txt is always regenerated when configure is run and
that the newly built skeleton python does not inadvertently import
modules from previously installed instances.
2014-08-22 13:30:59 -07:00
Benjamin Peterson daeb925cc8 backport many ssl features from Python 3 (closes #21308)
A contribution of Alex Gaynor and David Reid with the generous support of
Rackspace. May God have mercy on their souls.
2014-08-20 14:14:50 -05:00
Ned Deily ac1bb81732 Issue #21383: Allow "make touch" to work when building outside of the
source directory.
2014-05-22 15:26:34 -07:00
Ned Deily 1964d5bdf7 Issue #19990: Install test/imghdrdata. 2014-02-02 13:59:26 -08:00
Charles-François Natali 7a2fe9c83c Issue #19965: Make sure that Python-ast.h is properly taken into account in the
makefile.
2013-12-15 19:07:44 +01:00
Ned Deily 00365f1e8e Issue #15392: Install idlelib/idle_test. 2013-11-03 20:08:17 -08:00
Ned Deily a2a9f571a5 Issue #1584: Provide options to override default search paths for Tcl and Tk
when building _tkinter.  configure has two new options; if used, both must
be specified:

  ./configure \
      --with-tcltk-includes="-I/opt/local/include" \
      --with-tcltk-libs="-L/opt/local/lib -ltcl8.5 -ltk8.5"

In addition, the options can be overridden with make:

   make \
       TCLTK_INCLUDES="-I/opt/local/include" \
       TCLTK_LIBS="-L/opt/local/lib -ltcl8.6 -ltk8.6"
2013-10-25 00:30:10 -07:00
Serhiy Storchaka 25f6893720 Issue #18919: Add test/audiodata to LIBSUBDIRS. 2013-10-14 21:18:29 +03:00
Martin v. Löwis 6d7f7e8819 Drop buildbottouch again; the master is using "make touch" now. 2013-10-02 17:03:05 +02:00
Martin v. Löwis 5ddb0a30fd Add fake buildbottouch target. 2013-09-30 16:18:31 +02:00
Eric V. Smith e38905b4fa Closes #18312: 'make distclean' no longer deletes files in dot-directories. 2013-07-02 09:02:03 -04:00
doko@ubuntu.com 6cb4343d0d - Issue #13150, #17512: sysconfig no longer parses the Makefile and config.h
files when imported, instead doing it at build time.  This makes importing
  sysconfig faster and reduces Python startup time by 20%.
2013-04-08 21:20:09 +02:00
Benjamin Peterson 469ee9d84c backout 66e30c4870bb for breaking OSX (#13150) 2013-03-22 09:37:13 -05:00