Согласно документации CMake здесь , мы можем использовать тип сборки для указания наших собственных типов сборки, добавляя флаги в нашу пользовательскую сборку в зависимости от опции CMAKE_BUILD_TYPE
.
Например, , if CMAKE_BUILD_TYPE == Profile
, CMake будет использовать CMAKE_CXX_FLAGS_PROFILE
для флагов сборки.
Я хотел бы знать, есть ли способ «наследовать» флаги сборки от другого типа сборки. Например, я хочу сборку трассировки и отладки и сборку трассировки и выпуска. Можно ли сделать что-то вроде CMAKE_BUILD_TYPE=Trace_Debug
, которое добавляет CMAKE_CXX_FLAGS_DEBUG
и CMAKE_CXX_FLAGS_TRACE
в сборку? Я предполагаю, что это может иметь некоторые проблемы, поскольку это позволило бы проекту иметь противоречивые флаги сборки, но ничто не запрещает добавлять -O1
и -O3
к нашим флагам сейчас, так что проблема уже существует.