mirror of
https://github.com/python/cpython.git
synced 2025-08-30 05:35:08 +00:00
GH-91173: disable frozen modules in debug builds (#92023)
This commit is contained in:
parent
48c6165c28
commit
e8d7661ff2
3 changed files with 27 additions and 25 deletions
|
@ -732,7 +732,11 @@ _PyConfig_InitCompatConfig(PyConfig *config)
|
|||
#ifdef MS_WINDOWS
|
||||
config->legacy_windows_stdio = -1;
|
||||
#endif
|
||||
config->use_frozen_modules = -1;
|
||||
#ifdef Py_DEBUG
|
||||
config->use_frozen_modules = 0;
|
||||
#else
|
||||
config->use_frozen_modules = 1;
|
||||
#endif
|
||||
config->_is_python_build = 0;
|
||||
config->code_debug_ranges = 1;
|
||||
}
|
||||
|
@ -1978,25 +1982,22 @@ config_init_import(PyConfig *config, int compute_path_config)
|
|||
}
|
||||
|
||||
/* -X frozen_modules=[on|off] */
|
||||
if (config->use_frozen_modules < 0) {
|
||||
const wchar_t *value = config_get_xoption_value(config, L"frozen_modules");
|
||||
if (value == NULL) {
|
||||
config->use_frozen_modules = !config->_is_python_build;
|
||||
}
|
||||
else if (wcscmp(value, L"on") == 0) {
|
||||
config->use_frozen_modules = 1;
|
||||
}
|
||||
else if (wcscmp(value, L"off") == 0) {
|
||||
config->use_frozen_modules = 0;
|
||||
}
|
||||
else if (wcslen(value) == 0) {
|
||||
// "-X frozen_modules" and "-X frozen_modules=" both imply "on".
|
||||
config->use_frozen_modules = 1;
|
||||
}
|
||||
else {
|
||||
return PyStatus_Error("bad value for option -X frozen_modules "
|
||||
"(expected \"on\" or \"off\")");
|
||||
}
|
||||
const wchar_t *value = config_get_xoption_value(config, L"frozen_modules");
|
||||
if (value == NULL) {
|
||||
}
|
||||
else if (wcscmp(value, L"on") == 0) {
|
||||
config->use_frozen_modules = 1;
|
||||
}
|
||||
else if (wcscmp(value, L"off") == 0) {
|
||||
config->use_frozen_modules = 0;
|
||||
}
|
||||
else if (wcslen(value) == 0) {
|
||||
// "-X frozen_modules" and "-X frozen_modules=" both imply "on".
|
||||
config->use_frozen_modules = 1;
|
||||
}
|
||||
else {
|
||||
return PyStatus_Error("bad value for option -X frozen_modules "
|
||||
"(expected \"on\" or \"off\")");
|
||||
}
|
||||
|
||||
return _PyStatus_OK();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue