diff --git a/Misc/NEWS.d/next/Tools-Demos/2024-10-14-14-12-26.gh-issue-116114.xbAl-0.rst b/Misc/NEWS.d/next/Tools-Demos/2024-10-14-14-12-26.gh-issue-116114.xbAl-0.rst new file mode 100644 index 00000000000000..ba7e24224b3395 --- /dev/null +++ b/Misc/NEWS.d/next/Tools-Demos/2024-10-14-14-12-26.gh-issue-116114.xbAl-0.rst @@ -0,0 +1,2 @@ +Replace :c:var:`Py_OptimizeFlag` in ``makefreeze.py`` with +:c:member:`PyConfig.optimization_level`. diff --git a/Tools/freeze/makefreeze.py b/Tools/freeze/makefreeze.py index c464f4bbb2655d..e190657db7affe 100644 --- a/Tools/freeze/makefreeze.py +++ b/Tools/freeze/makefreeze.py @@ -21,7 +21,11 @@ { extern int Py_FrozenMain(int, char **); """ + ((not __debug__ and """ - Py_OptimizeFlag++; + PyConfig *config; + PyConfig_InitPythonConfig(config); + config->optimization_level++; + Py_InitializeFromConfig(config); + PyConfig_Clear(config); """) or "") + """ PyImport_FrozenModules = _PyImport_FrozenModules; return Py_FrozenMain(argc, argv);