diff options
author | Christian Heimes <christian@python.org> | 2021-12-03 15:01:11 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-03 15:01:11 (GMT) |
commit | 84ca1232b0f1e4be368e89550a9ceb46f64a0eff (patch) | |
tree | 917838767e45e47c72931d4d2b370c4f0b2eaf0e /Python | |
parent | ccb73a0d50dd03bc8455fe210cb83e41a6dc91d8 (diff) | |
download | cpython-84ca1232b0f1e4be368e89550a9ceb46f64a0eff.zip cpython-84ca1232b0f1e4be368e89550a9ceb46f64a0eff.tar.gz cpython-84ca1232b0f1e4be368e89550a9ceb46f64a0eff.tar.bz2 |
bpo-45950: Introduce Bootstrap Python again (#29859)
The build system now uses a :program:`_bootstrap_python` interpreter for
freezing and deepfreezing again. To speed up build process the build tools
:program:`_bootstrap_python` and :program:`_freeze_module` are no longer
build with LTO.
Cross building depends on a build Python interpreter, which must have same
version and bytecode as target host Python.
Diffstat (limited to 'Python')
-rw-r--r-- | Python/bootstrap_frozen.c | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/Python/bootstrap_frozen.c b/Python/bootstrap_frozen.c deleted file mode 100644 index 68ba147..0000000 --- a/Python/bootstrap_frozen.c +++ /dev/null @@ -1,45 +0,0 @@ - -/* Frozen modules bootstrap */ - -/* This file is linked with "bootstrap Python" - which is used (only) to run Tools/scripts/deepfreeze.py. */ - -#include "Python.h" -#include "pycore_import.h" - -/* Includes for frozen modules: */ -#include "frozen_modules/importlib._bootstrap.h" -#include "frozen_modules/importlib._bootstrap_external.h" -#include "frozen_modules/zipimport.h" -/* End includes */ - -/* Note that a negative size indicates a package. */ - -static const struct _frozen bootstrap_modules[] = { - {"_frozen_importlib", _Py_M__importlib__bootstrap, (int)sizeof(_Py_M__importlib__bootstrap)}, - {"_frozen_importlib_external", _Py_M__importlib__bootstrap_external, (int)sizeof(_Py_M__importlib__bootstrap_external)}, - {"zipimport", _Py_M__zipimport, (int)sizeof(_Py_M__zipimport)}, - {0, 0, 0} /* bootstrap sentinel */ -}; -static const struct _frozen stdlib_modules[] = { - {0, 0, 0} /* stdlib sentinel */ -}; -static const struct _frozen test_modules[] = { - {0, 0, 0} /* test sentinel */ -}; -const struct _frozen *_PyImport_FrozenBootstrap = bootstrap_modules; -const struct _frozen *_PyImport_FrozenStdlib = stdlib_modules; -const struct _frozen *_PyImport_FrozenTest = test_modules; - -static const struct _module_alias aliases[] = { - {"_frozen_importlib", "importlib._bootstrap"}, - {"_frozen_importlib_external", "importlib._bootstrap_external"}, - {0, 0} /* aliases sentinel */ -}; -const struct _module_alias *_PyImport_FrozenAliases = aliases; - - -/* Embedding apps may change this pointer to point to their favorite - collection of frozen modules: */ - -const struct _frozen *PyImport_FrozenModules = NULL; |