[devel] cmake затирает уровень оптимизации опцией по умолчанию

Илья Курдюков ilyakurdyukov на basealt.ru
Сб Окт 16 19:12:28 MSK 2021


Там в CMakeLists везде проставлено:

set(CMAKE_BUILD_TYPE Release CACHE STRING "Build Type")

Это какая-то редкость?

|CMAKE_CXX_FLAGS_RELWITHDEBINFO тоже должен ставить опцию -O2. Полагаю 
что если |CMAKE_BUILD_TYPE никто не трогал, то используется|CMAKE_CXX_FLAGS_DEBUG установленный в -g? |||

On 16.10.2021 23:02, Arseny Maslennikov wrote:
> On Sat, Oct 16, 2021 at 10:46:19PM +0700, Илья Курдюков wrote:
>> Заметил при сборке python3-module-PySide2, что макрос %cmake устанавливает
>> CMAKE_CXX_FLAGS, в который включается -O%_optlevel. Но потом этот -On
>> затирается флагом -O2, который содержится в CMAKE_CXX_FLAGS_RELEASE ("-O2
>> -DNDEBUG" по умолчанию).
>>
>> Не надо ли тогда в %cmake добавить -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" ?
> Не все собирают с -DCMAKE_BUILD_TYPE=Release.
> Если, например, явно собирать с -DCMAKE_BUILD_TYPE=RelWithDebInfo,
> флаги в CMAKE_CXX_FLAGS_RELEASE будут неактуальны.
>
> _______________________________________________
> Devel mailing list
> Devel на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
----------- следующая часть -----------
Вложение в формате HTML было удалено...
URL: <http://lists.altlinux.org/pipermail/devel/attachments/20211016/dba0636b/attachment.html>


Подробная информация о списке рассылки Devel