summaryrefslogtreecommitdiff
path: root/Tools/scripts
diff options
context:
space:
mode:
authorChristian Heimes <christian@python.org>2022-07-14 09:51:49 +0200
committerGitHub <noreply@github.com>2022-07-14 00:51:49 -0700
commit81dca70d704d0834d8c30580e648a973250b2973 (patch)
tree4c3fbd011e05692ae1720457d0e7602484b8dd26 /Tools/scripts
parentb03a9e8c8a4f3f5bb7196d4825fbfdaff022756f (diff)
downloadcpython-git-81dca70d704d0834d8c30580e648a973250b2973.tar.gz
gh-93939: Build C extensions without setup.py (GH-94474)
Combines GH-93940, GH-94452, and GH-94433
Diffstat (limited to 'Tools/scripts')
-rw-r--r--Tools/scripts/check_extension_modules.py11
-rw-r--r--Tools/scripts/generate_stdlib_module_names.py11
2 files changed, 3 insertions, 19 deletions
diff --git a/Tools/scripts/check_extension_modules.py b/Tools/scripts/check_extension_modules.py
index b3f43abf63..59239c62e2 100644
--- a/Tools/scripts/check_extension_modules.py
+++ b/Tools/scripts/check_extension_modules.py
@@ -130,10 +130,11 @@ class ModuleChecker:
pybuilddir_txt = "pybuilddir.txt"
setup_files = (
- SRC_DIR / "Modules/Setup",
+ # see end of configure.ac
"Modules/Setup.local",
- "Modules/Setup.bootstrap",
"Modules/Setup.stdlib",
+ "Modules/Setup.bootstrap",
+ SRC_DIR / "Modules/Setup",
)
def __init__(self, cross_compiling: bool = False, strict: bool = False):
@@ -308,12 +309,6 @@ class ModuleChecker:
MODBUILT_NAMES: modules in *static* block
MODSHARED_NAMES: modules in *shared* block
MODDISABLED_NAMES: modules in *disabled* block
-
- Modules built by setup.py addext() have a MODULE_{modname}_STATE entry,
- but are not listed in MODSHARED_NAMES.
-
- Modules built by old-style setup.py add() have neither a MODULE_{modname}
- entry nor an entry in MODSHARED_NAMES.
"""
moddisabled = set(sysconfig.get_config_var("MODDISABLED_NAMES").split())
if self.cross_compiling:
diff --git a/Tools/scripts/generate_stdlib_module_names.py b/Tools/scripts/generate_stdlib_module_names.py
index 82f10948b1..92100bd065 100644
--- a/Tools/scripts/generate_stdlib_module_names.py
+++ b/Tools/scripts/generate_stdlib_module_names.py
@@ -12,7 +12,6 @@ from check_extension_modules import ModuleChecker
SRC_DIR = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
STDLIB_PATH = os.path.join(SRC_DIR, 'Lib')
-SETUP_PY = os.path.join(SRC_DIR, 'setup.py')
IGNORE = {
'__init__',
@@ -64,15 +63,6 @@ def list_packages(names):
names.add(name)
-# Extension modules built by setup.py
-def list_setup_extensions(names):
- cmd = [sys.executable, SETUP_PY, "-q", "build", "--list-module-names"]
- output = subprocess.check_output(cmd)
- output = output.decode("utf8")
- extensions = output.splitlines()
- names |= set(extensions)
-
-
# Built-in and extension modules built by Modules/Setup*
# includes Windows and macOS extensions.
def list_modules_setup_extensions(names):
@@ -103,7 +93,6 @@ def list_frozen(names):
def list_modules():
names = set(sys.builtin_module_names)
list_modules_setup_extensions(names)
- list_setup_extensions(names)
list_packages(names)
list_python_modules(names)
list_frozen(names)