# Название основной цели в текущем каталоге set(TRGT example-filesystem-paths) # Список файлов исходных текстов set(TRGT_cpp ${CMAKE_CURRENT_SOURCE_DIR}/paths.cpp) if(MYXLIB_BUILD_EXAMPLES) # Путь поиска библиотек внутри проекта link_directories(${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}) # Цель для создания исполняемого файла add_executable(${TRGT} ${TRGT_cpp} ${TRGT_qrc}) common_target_properties(${TRGT}) # Создание цели для проверки утилитой clang-tidy add_clang_tidy_check(${TRGT} ${TRGT_cpp}) # Создание цели для проверки утилитой clang-analyze add_clang_analyze_check(${TRGT} ${TRGT_cpp}) # Создание цели для проверки утилитой clazy add_clazy_check(${TRGT} ${TRGT_cpp}) # Создание цели для проверки утилитой pvs-studio add_pvs_check(${TRGT}) # Создание цели для автоматического форматирования кода add_format_sources(${TRGT} ${TRGT_cpp}) # Qt5 target_include_directories(${TRGT} PRIVATE ${CMAKE_SOURCE_DIR}/src) target_include_directories(${TRGT} SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS}) target_include_directories(${TRGT} SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/src) add_dependencies(${TRGT} base filesystem) target_link_libraries(${TRGT} base_static filesystem_static) target_link_libraries(${TRGT} Qt5::Core) target_link_libraries(${TRGT} Threads::Threads) # Имя выходного файла для цели set_target_properties(${TRGT} PROPERTIES OUTPUT_NAME filesystem-minimal) add_sanitizers(${TRGT}) cotire(${TRGT}) add_dependencies(${TRGT} create_auxilary_symlinks) # Правила для установки install(TARGETS ${TRGT} COMPONENT examples RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) endif()