cpython/Lib/distutils/command
Petr Viktorin 563bd5a4dc
bpo-41282: Fix broken `make install` (GH-26329)
A previous commit broke a check in sysconfig when building cpython itself.
This caused builds of the standard library modules to search a wrong
location (the installed location rather than the source directory) for
header files with the net effect that a ``make install``
incorrectly caused all extension modules to be rebuilt again and
with incorrect include file paths.

When building Python, we need two distinct "include" directories:
- source .h files
- install target for .h files

Note that this doesn't matter except when building Python from source.

Historically:
- source .h files were in the distutils scheme under 'include'
- the install directory was in the distutils.command.install scheme
    under 'headers'

GH-24549 merged these; sysconfig is now the single source of truth and
distutils is derived from it.

This commit introduces a "secret" scheme path, 'headers', which contains
the install target. It is only present when building Python.
The distutils code uses it if present, and falls back to 'include'.

Co-authored-by: Ned Deily <nad@python.org>
2021-05-24 18:48:44 -04:00
..
__init__.py bpo-42802: Remove distutils bdist_wininst command (GH-24043) 2021-01-09 00:35:01 +01:00
bdist.py bpo-42802: Remove distutils bdist_wininst command (GH-24043) 2021-01-09 00:35:01 +01:00
bdist_dumb.py bpo-35133: Fix mistakes when concatenate string literals on different lines. (GH-10284) 2018-11-05 16:20:25 +02:00
bdist_msi.py bpo-42802: Remove distutils bdist_wininst command (GH-24043) 2021-01-09 00:35:01 +01:00
bdist_rpm.py bpo-40443: Remove unused imports in distutils (GH-19802) 2020-04-30 11:28:09 +02:00
build.py bpo-28552: Fix distutils.sysconfig for empty sys.executable (GH-12875) 2019-04-25 11:59:34 +02:00
build_clib.py
build_ext.py bpo-39432: Implement PEP-489 algorithm for non-ascii "PyInit_*" symbol names in distutils (GH-18150) 2020-02-04 07:24:30 -08:00
build_py.py bpo-41043: Escape literal part of the path for glob(). (GH-20994) 2020-06-20 11:10:31 +03:00
build_scripts.py #27364: fix "incorrect" uses of escape character in the stdlib. 2016-09-08 13:59:53 -04:00
check.py bpo-40443: Remove unused imports in distutils (GH-19802) 2020-04-30 11:28:09 +02:00
clean.py
command_template
config.py bpo-11191: skip unsupported test_distutils case for AIX with xlc (GH-8709) 2018-12-29 00:03:17 +10:00
install.py bpo-41282: Fix broken `make install` (GH-26329) 2021-05-24 18:48:44 -04:00
install_data.py
install_egg_info.py Issue #25985: sys.version_info is now used instead of sys.version 2016-02-11 13:10:36 +02:00
install_headers.py
install_lib.py Issue #23731: Implement PEP 488. 2015-04-13 14:21:02 -04:00
install_scripts.py
register.py Closes #27904: Improved logging statements to defer formatting until needed. 2016-08-31 08:22:29 +01:00
sdist.py bpo-22831: Use "with" to avoid possible fd leaks in distutils. (GH-10921) 2018-12-20 19:00:14 +02:00
upload.py Fix import of HTTPError (GH-22304) 2021-05-11 16:01:33 -07:00