Сборка примеров
This commit is contained in:
parent
b2731ac32f
commit
352bf756bd
@ -50,8 +50,6 @@ add_subdirectory(src/myx/redis)
|
|||||||
if(MYXLIB_BUILD_EXAMPLES OR MYXLIB_BUILD_EXAMPLES_HO)
|
if(MYXLIB_BUILD_EXAMPLES OR MYXLIB_BUILD_EXAMPLES_HO)
|
||||||
add_subdirectory(examples/filesystem)
|
add_subdirectory(examples/filesystem)
|
||||||
add_subdirectory(examples/qt)
|
add_subdirectory(examples/qt)
|
||||||
|
|
||||||
add_dependencies(example-filesystem-minimal create_auxilary_symlinks)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Документация
|
# Документация
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 83a9e94e31ab410c3346a36ddd2d10aa91375617
|
Subproject commit 197e5b3939709a0cc4924e44c355aa8ad7358b8e
|
@ -4,53 +4,73 @@ set(TRGT example-filesystem-minimal)
|
|||||||
# Список файлов исходных текстов
|
# Список файлов исходных текстов
|
||||||
set(TRGT_cpp ${CMAKE_CURRENT_SOURCE_DIR}/minimal.cpp)
|
set(TRGT_cpp ${CMAKE_CURRENT_SOURCE_DIR}/minimal.cpp)
|
||||||
|
|
||||||
# Путь поиска библиотек внутри проекта
|
if(MYXLIB_BUILD_EXAMPLES)
|
||||||
link_directories(${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
|
# Путь поиска библиотек внутри проекта
|
||||||
link_directories(${CMAKE_BINARY_DIR}/src/myx/filesystem/lib)
|
link_directories(${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
|
||||||
|
|
||||||
# Цель для создания исполняемого файла
|
# Цель для создания исполняемого файла
|
||||||
add_executable(${TRGT} ${TRGT_cpp} ${TRGT_qrc})
|
add_executable(${TRGT} ${TRGT_cpp} ${TRGT_qrc})
|
||||||
common_target_properties(${TRGT})
|
common_target_properties(${TRGT})
|
||||||
|
|
||||||
# Создание цели для проверки утилитой clang-tidy
|
# Создание цели для проверки утилитой clang-tidy
|
||||||
add_clang_tidy_check(${TRGT} ${TRGT_cpp})
|
add_clang_tidy_check(${TRGT} ${TRGT_cpp})
|
||||||
|
|
||||||
# Создание цели для проверки утилитой clang-analyze
|
# Создание цели для проверки утилитой clang-analyze
|
||||||
add_clang_analyze_check(${TRGT} ${TRGT_cpp})
|
add_clang_analyze_check(${TRGT} ${TRGT_cpp})
|
||||||
|
|
||||||
# Создание цели для проверки утилитой clazy
|
# Создание цели для проверки утилитой clazy
|
||||||
add_clazy_check(${TRGT} ${TRGT_cpp})
|
add_clazy_check(${TRGT} ${TRGT_cpp})
|
||||||
|
|
||||||
# Создание цели для проверки утилитой pvs-studio
|
# Создание цели для проверки утилитой pvs-studio
|
||||||
add_pvs_check(${TRGT})
|
add_pvs_check(${TRGT})
|
||||||
|
|
||||||
# Создание цели для автоматического форматирования кода
|
# Создание цели для автоматического форматирования кода
|
||||||
add_format_sources(${TRGT} ${TRGT_cpp})
|
add_format_sources(${TRGT} ${TRGT_cpp})
|
||||||
|
|
||||||
target_include_directories(${TRGT} PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
target_include_directories(${TRGT} PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
||||||
target_include_directories(${TRGT} SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS})
|
target_include_directories(${TRGT} SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS})
|
||||||
|
target_compile_definitions(${TRGT} PUBLIC MYXLIB_BUILD_LIBRARIES)
|
||||||
|
|
||||||
if(NOT MYXLIB_HEADER_ONLY)
|
|
||||||
add_dependencies(${TRGT} base_static filesystem_static)
|
add_dependencies(${TRGT} base_static filesystem_static)
|
||||||
target_link_libraries(${TRGT} myx-filesystem)
|
target_link_libraries(${TRGT} myx-filesystem)
|
||||||
else()
|
|
||||||
target_compile_definitions(${TRGT} PUBLIC MYXLIB_HEADER_ONLY)
|
target_link_libraries(${TRGT} Qt5::Core)
|
||||||
target_include_directories(${TRGT} SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
target_link_libraries(${TRGT} Threads::Threads)
|
||||||
add_dependencies(${TRGT} base filesystem)
|
|
||||||
|
# Имя выходного файла для цели
|
||||||
|
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()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(${TRGT} Qt5::Core)
|
if(MYXLIB_BUILD_EXAMPLES_HO)
|
||||||
target_link_libraries(${TRGT} Threads::Threads)
|
# Цель для создания исполняемого файла
|
||||||
|
add_executable(${TRGT}-ho ${TRGT_cpp} ${TRGT_qrc})
|
||||||
|
common_target_properties(${TRGT}-ho)
|
||||||
|
|
||||||
# Имя выходного файла для цели
|
target_include_directories(${TRGT}-ho PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
||||||
set_target_properties(${TRGT} PROPERTIES OUTPUT_NAME filesystem-minimal
|
target_include_directories(${TRGT}-ho SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS})
|
||||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR})
|
|
||||||
|
|
||||||
add_sanitizers(${TRGT})
|
add_dependencies(${TRGT}-ho base-header-only filesystem-header-only)
|
||||||
|
|
||||||
cotire(${TRGT})
|
target_link_libraries(${TRGT}-ho Qt5::Core)
|
||||||
|
target_link_libraries(${TRGT}-ho Threads::Threads)
|
||||||
|
|
||||||
add_dependencies(${TRGT} create_auxilary_symlinks)
|
# Имя выходного файла для цели
|
||||||
|
set_target_properties(${TRGT}-ho PROPERTIES OUTPUT_NAME filesystem-minimal-ho)
|
||||||
|
|
||||||
# Правила для установки
|
add_sanitizers(${TRGT}-ho)
|
||||||
install(TARGETS ${TRGT} COMPONENT examples RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
cotire(${TRGT}-ho)
|
||||||
|
|
||||||
|
add_dependencies(${TRGT}-ho create_auxilary_symlinks)
|
||||||
|
|
||||||
|
# Правила для установки
|
||||||
|
install(TARGETS ${TRGT}-ho COMPONENT examples RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
|
endif()
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
// #include <myx/base/cmlib_private_config.hpp>
|
|
||||||
#include <myx/base/config.hpp>
|
#include <myx/base/config.hpp>
|
||||||
|
|
||||||
#include <myx/filesystem/paths.hpp>
|
#include <myx/filesystem/paths.hpp>
|
||||||
|
@ -10,53 +10,74 @@ qt5_translation(
|
|||||||
BASE_NAME ${TRGT}
|
BASE_NAME ${TRGT}
|
||||||
LANGUAGES ru_RU)
|
LANGUAGES ru_RU)
|
||||||
|
|
||||||
# Путь поиска библиотек внутри проекта
|
if(MYXLIB_BUILD_EXAMPLES)
|
||||||
link_directories(${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
|
|
||||||
link_directories(${CMAKE_BINARY_DIR}/src/myx/qt/lib)
|
|
||||||
|
|
||||||
# Цель для создания исполняемого файла
|
# Путь поиска библиотек внутри проекта
|
||||||
add_executable(${TRGT} ${TRGT_cpp} ${TRGT_qrc})
|
link_directories(${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR})
|
||||||
common_target_properties(${TRGT})
|
|
||||||
|
|
||||||
# Создание цели для проверки утилитой clang-tidy
|
# Цель для создания исполняемого файла
|
||||||
add_clang_tidy_check(${TRGT} ${TRGT_cpp})
|
add_executable(${TRGT} ${TRGT_cpp} ${TRGT_qrc})
|
||||||
|
common_target_properties(${TRGT})
|
||||||
|
|
||||||
# Создание цели для проверки утилитой clang-analyze
|
# Создание цели для проверки утилитой clang-tidy
|
||||||
add_clang_analyze_check(${TRGT} ${TRGT_cpp})
|
add_clang_tidy_check(${TRGT} ${TRGT_cpp})
|
||||||
|
|
||||||
# Создание цели для проверки утилитой clazy
|
# Создание цели для проверки утилитой clang-analyze
|
||||||
add_clazy_check(${TRGT} ${TRGT_cpp})
|
add_clang_analyze_check(${TRGT} ${TRGT_cpp})
|
||||||
|
|
||||||
# Создание цели для проверки утилитой pvs-studio
|
# Создание цели для проверки утилитой clazy
|
||||||
add_pvs_check(${TRGT})
|
add_clazy_check(${TRGT} ${TRGT_cpp})
|
||||||
|
|
||||||
# Создание цели для автоматического форматирования кода
|
# Создание цели для проверки утилитой pvs-studio
|
||||||
add_format_sources(${TRGT} ${TRGT_cpp})
|
add_pvs_check(${TRGT})
|
||||||
|
|
||||||
# Qt5
|
# Создание цели для автоматического форматирования кода
|
||||||
target_include_directories(${TRGT} PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
add_format_sources(${TRGT} ${TRGT_cpp})
|
||||||
target_include_directories(${TRGT} SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS})
|
|
||||||
|
# Qt5
|
||||||
|
target_include_directories(${TRGT} PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
||||||
|
target_include_directories(${TRGT} SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS})
|
||||||
|
|
||||||
if(NOT MYXLIB_HEADER_ONLY)
|
|
||||||
add_dependencies(${TRGT} base_static qt_static)
|
|
||||||
target_link_libraries(${TRGT} myx-qt)
|
|
||||||
else()
|
|
||||||
target_compile_definitions(${TRGT} PUBLIC MYXLIB_HEADER_ONLY)
|
target_compile_definitions(${TRGT} PUBLIC MYXLIB_HEADER_ONLY)
|
||||||
target_include_directories(${TRGT} SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
target_include_directories(${TRGT} SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
||||||
add_dependencies(${TRGT} base qt)
|
add_dependencies(${TRGT} base qt)
|
||||||
|
|
||||||
|
target_link_libraries(${TRGT} Qt5::Core)
|
||||||
|
|
||||||
|
# Имя выходного файла для цели
|
||||||
|
set_target_properties(${TRGT} PROPERTIES OUTPUT_NAME qt-translators)
|
||||||
|
|
||||||
|
add_sanitizers(${TRGT})
|
||||||
|
|
||||||
|
cotire(${TRGT})
|
||||||
|
|
||||||
|
add_dependencies(${TRGT} create_auxilary_symlinks)
|
||||||
|
|
||||||
|
# Правила для установки
|
||||||
|
install(TARGETS ${TRGT} COMPONENT examples RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(${TRGT} Qt5::Core)
|
if(MYXLIB_BUILD_EXAMPLES_HO)
|
||||||
|
# Цель для создания исполняемого файла
|
||||||
|
add_executable(${TRGT}-ho ${TRGT_cpp} ${TRGT_qrc})
|
||||||
|
common_target_properties(${TRGT}-ho)
|
||||||
|
|
||||||
# Имя выходного файла для цели
|
target_include_directories(${TRGT}-ho PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
||||||
set_target_properties(${TRGT} PROPERTIES OUTPUT_NAME qt-translators
|
target_include_directories(${TRGT}-ho SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS})
|
||||||
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR})
|
|
||||||
|
|
||||||
add_sanitizers(${TRGT})
|
add_dependencies(${TRGT}-ho base-header-only qt-header-only)
|
||||||
|
|
||||||
cotire(${TRGT})
|
target_link_libraries(${TRGT}-ho Qt5::Core)
|
||||||
|
target_link_libraries(${TRGT}-ho Threads::Threads)
|
||||||
|
|
||||||
add_dependencies(${TRGT} create_auxilary_symlinks)
|
# Имя выходного файла для цели
|
||||||
|
set_target_properties(${TRGT}-ho PROPERTIES OUTPUT_NAME qt-translators-ho)
|
||||||
|
|
||||||
# Правила для установки
|
add_sanitizers(${TRGT}-ho)
|
||||||
install(TARGETS ${TRGT} COMPONENT examples RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
cotire(${TRGT}-ho)
|
||||||
|
|
||||||
|
add_dependencies(${TRGT}-ho create_auxilary_symlinks)
|
||||||
|
|
||||||
|
# Правила для установки
|
||||||
|
install(TARGETS ${TRGT}-ho COMPONENT examples RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
|
endif()
|
||||||
|
@ -42,7 +42,6 @@ if(MYXLIB_BUILD_LIBRARIES)
|
|||||||
|
|
||||||
target_compile_definitions(${TRGT} PUBLIC MYXLIB_BUILD_LIBRARIES)
|
target_compile_definitions(${TRGT} PUBLIC MYXLIB_BUILD_LIBRARIES)
|
||||||
target_include_directories(${TRGT} SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
target_include_directories(${TRGT} SYSTEM PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
||||||
cotire(${TRGT})
|
|
||||||
|
|
||||||
install(TARGETS ${TRGT}_static COMPONENT libs-dev ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
install(TARGETS ${TRGT}_static COMPONENT libs-dev ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
if(BUILD_SHARED_LIBS)
|
if(BUILD_SHARED_LIBS)
|
||||||
|
Loading…
Reference in New Issue
Block a user