CMP0098
Новое в версии 3.17.
FindFLEX выполняет flex в каталоге CMAKE_CURRENT_BINARY_DIR при выполнении.
Модуль предоставляет макрос FLEX_TARGET, который генерирует выходные данные FLEX. В CMake 3.16 и ниже этот макрос генерировал бы пользовательскую команду, которая запускает flex в текущем каталоге исходных кодов. CMake 3.17 и более поздние версии предпочитают запускать его в каталоге построения и использовать CMAKE_CURRENT_BINARY_DIR в качестве WORKING_DIRECTORY вызова add_custom_command(). Это гарантирует, что любой неявно сгенерированный файл записывается относительно дерева построения, а не дерева исходных кодов, если сгенерированный файл не указан как абсолютный путь.
Данный параметр обеспечивает совместимость для проектов, которые не были обновлены для работы с новым поведением.
Поведение OLD для данного параметра заключается в том, что FLEX_TARGET использует текущий каталог исходных кодов для WORKING_DIRECTORY и для генерации неявных файлов. Поведение NEW данного параметра заключается в использовании текущего каталога построения для WORKING_DIRECTORY относительно которого генерируются неявные файлы, если не указан абсолютный путь.
Этот параметр был представлен в версии CMake 3.17. Используйте команду cmake_policy() для явного задания его в OLD или NEW. В отличие от многих параметров, CMake версии 3.24.2 не выдает предупреждение, когда этот параметр не задан, и просто использует поведение OLD.
Примечание
Поведение OLD параметра является deprecated by definition и может быть удалено в будущих версиях CMake.
© 2000–2022 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.24/policy/CMP0098.html