cmake: set -O2 optimization level only if CMAKE_BUILD_TYPE is not specified #66
Reference in New Issue
Block a user
Delete Branch "cmake_linux_opt_level"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Сейчас для linux всегда ставится уровень оптимизации -O2, независимо от CMAKE_BUILD_TYPE
Это ведёт к следующим проблемам:
-std=c++17 -O2 -O3 -DNDEBUG, что не очень хорошоРешение: устанавливать O2 только если CMAKE_BUILD_TYPE не определён
а зачем тогда оставлять этот флаг, если в релизе O3, тогда надо удалить эту строчку вовсе.
Чтобы в случае, если CMAKE_BUILD_TYPE не указан, выставлялся хотя бы -O2
так если он не указал, вставляется O3 - разве нет? надо тогда разделять на дебаг - релиз. Наверно это лишнее все таки.