diff --git pyobjc-core/setup.py pyobjc-core/setup.py --- pyobjc-core/setup.py +++ pyobjc-core/setup.py @@ -150,15 +150,15 @@ if get_config_var("Py_DEBUG"): elif isinstance(cfg_vars[k], str) and "-O3" in cfg_vars[k]: cfg_vars[k] = cfg_vars[k].replace("-O3", "-O1 -g") -# else: -# # Enable -O3, which enables link-time optimization with -# # clang. This appears to have a positive effect on performance. -# cfg_vars = get_config_vars() -# for k in cfg_vars: -# if isinstance(cfg_vars[k], str) and "-O2" in cfg_vars[k]: -# cfg_vars[k] = cfg_vars[k].replace("-O2", "-O3") -# elif isinstance(cfg_vars[k], str) and "-O3" in cfg_vars[k]: -# cfg_vars[k] = cfg_vars[k].replace("-O3", "-O3") +else: + # Enable -O4, which enables link-time optimization with + # clang. This appears to have a positive effect on performance. + cfg_vars = get_config_vars() + for k in cfg_vars: + if isinstance(cfg_vars[k], str) and "-O2" in cfg_vars[k]: + cfg_vars[k] = cfg_vars[k].replace("-O2", "-O3 -flto") + elif isinstance(cfg_vars[k], str) and "-O3" in cfg_vars[k]: + cfg_vars[k] = cfg_vars[k].replace("-O3", "-O3 -flto") # XXX: bug in CPython 3.4 repository leaks unwanted compiler flag into distutils.