48 lines
2.1 KiB
CMake
48 lines
2.1 KiB
CMake
# Название основной цели в текущем каталоге
|
|
set(current_target example-filesystem-minimal)
|
|
|
|
# Список файлов исходных текстов
|
|
set(current_target_sources ${CMAKE_CURRENT_SOURCE_DIR}/minimal.cpp)
|
|
|
|
# Путь поиска библиотек внутри проекта
|
|
link_directories(${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
|
|
link_directories(${CMAKE_BINARY_DIR}/src/myx/filesystem/lib)
|
|
|
|
# Цель для создания исполняемого файла
|
|
add_executable(${current_target} ${current_target_sources})
|
|
common_target_properties(${current_target})
|
|
add_clang_tidy_check(${current_target} ${current_target_sources})
|
|
add_clang_analyze_check(${current_target} ${current_target_sources})
|
|
add_clazy_check(${current_target} ${current_target_sources})
|
|
add_pvs_check(${current_target})
|
|
|
|
# Форматирование исходников
|
|
add_format_sources(${current_target} ${current_target_sources} ${current_target_headers})
|
|
|
|
add_dependencies(${current_target} base)
|
|
add_dependencies(${current_target} filesystem)
|
|
|
|
# Qt5 qt_translation(TARGET ${current_target} TS_DIR ${CMAKE_SOURCE_DIR}/l10n
|
|
# LANGUAGES ru_RU)
|
|
target_include_directories(${current_target} PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
|
target_include_directories(${current_target} SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS})
|
|
target_compile_options(${current_target} PUBLIC "${Qt5Core_EXECUTABLE_COMPILE_FLAGS}")
|
|
|
|
target_link_libraries(${current_target} myx-filesystem)
|
|
target_link_libraries(${current_target} Qt5::Core)
|
|
target_link_libraries(${current_target} Threads::Threads)
|
|
|
|
# Имя выходного файла для цели
|
|
set_target_properties(
|
|
${current_target} PROPERTIES OUTPUT_NAME filesystem-minimal RUNTIME_OUTPUT_DIRECTORY
|
|
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR})
|
|
|
|
add_sanitizers(${current_target})
|
|
|
|
# cotire(${current_target})
|
|
|
|
add_dependencies(${current_target} create_auxilary_symlinks)
|
|
|
|
# Правила для установки
|
|
install(TARGETS ${current_target} COMPONENT EXAMPLES RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|