summaryrefslogtreecommitdiffstats
path: root/Makefile.pre.in
Commit message (Collapse)AuthorAgeFilesLines
* bpo-35081: And pycore_lifecycle.h and pycore_pathconfig.h (GH-10273)Victor Stinner2018-11-011-0/+2
| | | | | | | | | | * And pycore_lifecycle.h and pycore_pathconfig.h headers to Include/internal/ * Move Py_BUILD_CORE specific code from coreconfig.h and pylifecycle.h to pycore_pathconfig.h and pycore_lifecycle.h * Move _Py_wstrlist_XXX() definitions and _PyPathConfig code from pycore_state.h to pycore_pathconfig.h * Move "Init" and "Fini" function definitions from pylifecycle.c to pycore_lifecycle.h.
* bpo-35081: Move accu.h to Include/internal/pycore_accu.h (GH-10271)Victor Stinner2018-11-011-1/+1
| | | | | | | The accu.h header is no longer part of the Python C API: it has been moved to the "internal" headers which are restricted to Python itself. Replace #include "accu.h" with #include "pycore_accu.h".
* bpo-35081: Add pycore_ prefix to internal header files (GH-10263)Victor Stinner2018-10-311-9/+9
| | | | | | | | | | | | | | | | | | | | * Rename Include/internal/ header files: * pyatomic.h -> pycore_atomic.h * ceval.h -> pycore_ceval.h * condvar.h -> pycore_condvar.h * context.h -> pycore_context.h * pygetopt.h -> pycore_getopt.h * gil.h -> pycore_gil.h * hamt.h -> pycore_hamt.h * hash.h -> pycore_hash.h * mem.h -> pycore_mem.h * pystate.h -> pycore_state.h * warnings.h -> pycore_warnings.h * PCbuild project, Makefile.pre.in, Modules/Setup: add the Include/internal/ directory to the search paths of header files. * Update includes. For example, replace #include "internal/mem.h" with #include "pycore_mem.h".
* bpo-35081: Move Include/pyatomic.c to Include/internal/ (GH-10239)Victor Stinner2018-10-301-1/+1
| | | Add pyatomic.h to the VS project (it wasn't referenced).
* bpo-35053: Add Include/tracemalloc.h (GH-10091)Victor Stinner2018-10-251-0/+1
| | | | | | | * Modify object.h to ensure that pymem.h is included, to get _Py_tracemalloc_config variable. * Move _PyTraceMalloc_XXX() functions to tracemalloc.h, they need PyObject type. Break circular dependency between pymem.h and object.h.
* closes bpo-34869: Remove LDLAST. (GH-9667)Benjamin Peterson2018-10-041-9/+8
|
* bpo-25711: Rewrite zipimport in pure Python. (GH-6809)Serhiy Storchaka2018-09-181-3/+10
|
* bpo-34170: Add Python/coreconfig.c for _PyCoreConfig (GH-8607)Victor Stinner2018-08-011-1/+3
| | | | | | | * Add Include/coreconfig.h * Move config_*() and _PyCoreConfig_*() functions from Modules/main.c to a new Python/coreconfig.c file. * Inline _Py_ReadHashSeed() into config_init_hash_seed() * Move global configuration variables to coreconfig.c
* bpo-32430: Rename Modules/Setup.dist to Modules/Setup (GH-8229)Antoine Pitrou2018-07-161-15/+4
| | | | | bpo-32430: Rename Modules/Setup.dist to Modules/Setup Remove the necessity to copy the former manually to the latter when updating the local source tree.
* Enable the verbose build for extension modules with GNU make (#6659)Matthias Klose2018-04-301-1/+5
|
* bpo-25427: Remove pyvenv (GH-5962)Brett Cannon2018-04-201-2/+0
|
* bpo-32232: by default, Setup modules are no longer built with ↵xdegaye2018-04-201-1/+2
| | | | | | | | | -DPy_BUILD_CORE (GH-6489) Setup modules are no longer built with -DPy_BUILD_CORE by default, as using that flag may now require including additional internal-only header files. Instead, only the modules that specifically need it use that setting.
* bpo-30638: Add clinic to `make regen-all` (GH-5671)Zachary Ware2018-02-171-7/+7
| | | Also, use PYTHON_FOR_REGEN for clinic and blake2s_impl.c rather than PYTHON_FOR_BUILD, and update .travis.yml to make use of the change.
* String annotations [PEP 563] (#4390)Guido van Rossum2018-01-261-1/+2
| | | | | | | | * Document `from __future__ import annotations` * Provide plumbing and tests for `from __future__ import annotations` * Implement unparsing the AST back to string form This is required for PEP 563 and as such only implements a part of the unparsing process that covers expressions.
* bpo-32436: Implement PEP 567 (#5027)Yury Selivanov2018-01-231-0/+4
|
* bpo-32598: Use autoconf to detect usable OpenSSL (#5242)Christian Heimes2018-01-201-0/+5
| | | | | | | | | | | | | | Add https://www.gnu.org/software/autoconf-archive/ax_check_openssl.html to auto-detect compiler flags, linker flags and libraries to compile OpenSSL extensions. The M4 macro uses pkg-config and falls back to manual detection. Add autoconf magic to detect usable X509_VERIFY_PARAM_set1_host() and related functions. Refactor setup.py to use new config vars to compile _ssl and _hashlib modules. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-32549: Compile OpenSSL 1.1.0 on Travis CI (#5180)Christian Heimes2018-01-161-1/+1
| | | | | | Use an improved version of multissl test helper to compile a local copy of OpenSSL 1.1.0g. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-32248: install new test_importlib directories (#5138)Ned Deily2018-01-091-5/+20
|
* move pygetopt.h to internal (closes bpo-32264) (#4830)Benjamin Peterson2017-12-151-1/+1
|
* bpo-29469: Move constant folding to AST optimizer (GH-2858)INADA Naoki2017-12-141-0/+1
|
* Revert "bpo-32197: Try to fix a compiler error on OS X introduced in ↵Victor Stinner2017-12-041-1/+2
| | | | | | | | | | | | | | | | | | | | | | | bpo-32030. (#4681)" (#4694) * Revert "bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)" This reverts commit 13badcbc60cdbfae1dba1683fd2fae9d70717143. Re-apply commits: * "bpo-32030: _PyPathConfig_Init() sets home and program_name (#4673)" commit af5a895073c24637c094772b27526b94a12ec897. * "bpo-32030: Fix config_get_program_name() on macOS (#4669)" commit e23c06e2b03452c9aaf0dae52296c85e572f9bcd. * "bpo-32030: Add Python/pathconfig.c (#4668)" commit 0ea395ae964c9cd0f499e2ef0d0030c971201220. * "bpo-32030: Don't call _PyPathConfig_Fini() in Py_FinalizeEx() (#4667)" commit ebac19dad6263141d5db0a2c923efe049dba99d2. * "bpo-32030: Fix Py_GetPath(): init program_name (#4665)" commit 9ac3d8882712c9675c3d2f9f84af6b5729575cde. * Fix compilation error on macOS
* bpo-32197: Try to fix a compiler error on OS X introduced in bpo-32030. (#4681)Serhiy Storchaka2017-12-021-2/+1
| | | | | | | | | | | | | | | | | | | | | | * Revert "bpo-32030: _PyPathConfig_Init() sets home and program_name (#4673)" This reverts commit af5a895073c24637c094772b27526b94a12ec897. * Revert "bpo-32030: Fix config_get_program_name() on macOS (#4669)" This reverts commit e23c06e2b03452c9aaf0dae52296c85e572f9bcd. * Revert "bpo-32030: Add Python/pathconfig.c (#4668)" This reverts commit 0ea395ae964c9cd0f499e2ef0d0030c971201220. * Revert "bpo-32030: Don't call _PyPathConfig_Fini() in Py_FinalizeEx() (#4667)" This reverts commit ebac19dad6263141d5db0a2c923efe049dba99d2. * Revert "bpo-32030: Fix Py_GetPath(): init program_name (#4665)" This reverts commit 9ac3d8882712c9675c3d2f9f84af6b5729575cde.
* bpo-32030: Add Python/pathconfig.c (#4668)Victor Stinner2017-12-011-1/+2
| | | | | | | * Factorize code from PC/getpathp.c and Modules/getpath.c to remove duplicated code * rename pathconfig_clear() to _PyPathConfig_Clear() * Inline _PyPathConfig_Fini() in pymain_impl() and then remove it, since it's a oneliner
* make tags: index also Modules/_ctypes/ (#4648)Victor Stinner2017-11-301-4/+3
| | | Avoid also "cd $(srcdir)" to not change the current directory.
* bpo-32096: Remove obj and mem from _PyRuntime (#4532)Victor Stinner2017-11-241-1/+0
| | | | | | | | | | | | | | | | | bpo-32096, bpo-30860: Partially revert the commit 2ebc5ce42a8a9e047e790aefbf9a94811569b2b6: * Move structures back from Include/internal/mem.h to Objects/obmalloc.c * Remove _PyObject_Initialize() and _PyMem_Initialize() * Remove Include/internal/pymalloc.h * Add test_capi.test_pre_initialization_api(): Make sure that it's possible to call Py_DecodeLocale(), and then call Py_SetProgramName() with the decoded string, before Py_Initialize(). PyMem_RawMalloc() and Py_DecodeLocale() can be called again before _PyRuntimeState_Init(). Co-Authored-By: Eric Snow <ericsnowcurrently@gmail.com>
* bpo-31934: Abort when building out of a not clean source tree (GH-4255)xdegaye2017-11-081-4/+14
|
* Fix miscellaneous typos (#4275)luzpaz2017-11-051-1/+1
|
* bpo-28643: Record profile-opt build progress with stamp files (#4223)Neil Schemenauer2017-11-021-9/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bpo-28643: Record profile-opt build progress with stamp files The profile-opt makefile target is expensive to build. Since the makefile does not contain complete dependency information for this target, much extra work can get done if the build is interrupted and re-started. Even running "make" a second time will result in a huge amount of redundant work. As a minimal fix (rather than removing recursive "make" and adding a proper dependency graph), split the profile-opt target into parts: - ensure tree is clean (profile-clean-stamp) - build with profile generation enabled (profile-gen-stamp) - run task to generate profile information (profile-run-stamp) - build optimized Python using above information (profile-opt) We use "stamp" files to record completion of the steps. Running "make clean" will not remove the profile-run-stamp file. Other minor changes: - remove the "build_all_use_profile" target. I don't expect callers of the makefile to use this target so that should be safe. - remove execution of "profile-removal" at end of "profile-opt". I don't see any reason to not to keep the profile information, given the cost to generate it. Removing the "profile-run-stamp" file will force re-generation of it.
* bpo-31810: Add smelly.py to check exported symbols (#4057)Victor Stinner2017-10-241-3/+2
| | | | | | | * Add Tools/scripts/smelly.py: script checking if all symbols exported by libpython start with "Py" or "_Py". * Modify "make smelly" to run smelly.py: the command now fails with a non-zero exit code if libpython leaks a "smelly" symbol. * Travis CI now runs "make smelly"
* explicitly list objects for the ar command (#3824)Benjamin Peterson2017-09-291-1/+1
| | | | | $^ is not portable. closes bpo-31625
* stop using ranlib (closes bpo-31625) (#3815)Benjamin Peterson2017-09-291-10/+1
| | | Instead, simply pass 's' to ar.
* bpo-31536: Avoid wholesale rebuild after `make regen-all` (#3678)Antoine Pitrou2017-09-201-9/+19
| | | | | | * bpo-31536: Avoid wholesale rebuild after `make regen-all` * Add NEWS
* bpo-30860: Add Include/internal/ in "make tags" (#3498)Victor Stinner2017-09-111-2/+2
|
* bpo-31354: Let configure --with-lto work on all buildsoctaviansoldea2017-09-081-2/+2
| | | | | | | | | | Allow configure --with-lto to apply to all builds, not just profile-opt builds. Whether this is actually useful or not must be determined by the person building CPython using their own toolchain. My own quick test on x86_64 Debian 9 (gcc 6.3, binutils 2.28) seemed to suggest that it wasn't, but I expect better toolchains can or will exist at some point. The point is to allow it at all.
* bpo-30860: Consolidate stateful runtime globals. (#3397)Eric Snow2017-09-081-0/+6
| | | | | | | * group the (stateful) runtime globals into various topical structs * consolidate the topical structs under a single top-level _PyRuntimeState struct * add a check-c-globals.py script that helps identify runtime globals Other globals are excluded (see globals.txt and check-c-globals.py).
* bpo-31370: Remove support for threads-less builds (#3385)Antoine Pitrou2017-09-071-6/+2
| | | | | | * Remove Setup.config * Always define WITH_THREAD for compatibility.
* Update multissl test helper (#3349)Christian Heimes2017-09-071-0/+7
| | | Signed-off-by: Christian Heimes <christian@python.org>
* Revert "bpo-30860: Consolidate stateful runtime globals." (#3379)Eric Snow2017-09-061-7/+0
| | | Windows buildbots started failing due to include-related errors.
* bpo-30860: Consolidate stateful runtime globals. (#2594)Eric Snow2017-09-061-0/+7
| | | | | | | | | * group the (stateful) runtime globals into various topical structs * consolidate the topical structs under a single top-level _PyRuntimeState struct * add a check-c-globals.py script that helps identify runtime globals Other globals are excluded (see globals.txt and check-c-globals.py).
* bpo-30871: Add "make pythoninfo" (#3120)Victor Stinner2017-08-181-0/+5
|
* bpo-30814, bpo-30876: Add new import test files to projects. (#2851)Serhiy Storchaka2017-07-271-0/+2
|
* buildbot: pass --fail-env-changed to regrtest (#2509)Victor Stinner2017-06-301-1/+1
| | | Make tests fail if a test altered the environment.
* bpo-30492: Allow make clinic to work out of tree. (#1836)Gregory P. Smith2017-05-271-1/+1
| | | | | | * bpo-30492: Allow make clinic to work out of tree. * Use os.curdir instead of "." as the default value.
* bpo-20210: Support the *disabled* marker in Setup files (GH-132)xdegaye2017-05-271-3/+4
| | | | | Extension modules listed after the *disabled* marker are not built at all, neither by the Makefile nor by setup.py.
* bpo-22257: Small changes for PEP 432. (#1728)Eric Snow2017-05-231-1/+1
| | | PEP 432 specifies a number of large changes to interpreter startup code, including exposing a cleaner C-API. The major changes depend on a number of smaller changes. This patch includes all those smaller changes.
* Remove .bzrignore (GH-1661)Stéphane Wirtel2017-05-221-1/+0
|
* bpo-28787: Fix out of tree --with-dtrace builds (#135)stratakis2017-05-101-0/+1
| | | | | | | | * bpo-28787: Fix out of tree --with-dtrace builds * Unsilence directory creation * Add Misc/NEWS and Misc/ACKS entries
* bpo-30289: remove Misc/python-config.sh when make distclean (#1498)Xiang Zhang2017-05-091-1/+2
|
* bpo-29243: Fix Makefile with respect to --enable-optimizations (#1478)torsava2017-05-051-7/+7
| | | | | | | | | | | | | * 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
* bpo-23404: make touch becomes make regen-all (#1405)Victor Stinner2017-05-031-81/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | 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-importlib: Python/importlib_external.h and Python/importlib.h - regen-opcode: Include/opcode.h - regen-opcode-targets: Python/opcode_targets.h - regen-typeslots: Objects/typeslots.inc * Rename PYTHON_FOR_GEN to PYTHON_FOR_REGEN * 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 Note: $(PYTHON_FOR_REGEN) is no more used nor needed by "make" default target building Python.