Рефакторинг 3
This commit is contained in:
@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.3)
|
||||
cmake_policy(VERSION 3.0.2..3.7)
|
||||
|
||||
# Название проекта
|
||||
project(myx VERSION 0.3.0 LANGUAGES C CXX)
|
||||
project(myx VERSION 0.4.0 LANGUAGES C CXX)
|
||||
|
||||
# В каталоге cmake/lib находятся файлы с библиотечными функциями
|
||||
if(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/cmake/cmlib)
|
||||
@ -14,7 +14,7 @@ endif()
|
||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/find)
|
||||
|
||||
if(NOT DEFINED MYXLIB_MASTER_PROJECT)
|
||||
if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
|
||||
if(CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
|
||||
set(MYXLIB_MASTER_PROJECT ON)
|
||||
else()
|
||||
set(MYXLIB_MASTER_PROJECT OFF)
|
||||
@ -23,8 +23,11 @@ endif()
|
||||
|
||||
include(CMLibCommon)
|
||||
|
||||
option(MYXLIB_HEADER_ONLY "Build header only version of library" ON)
|
||||
option(MYXLIB_BUILD_EXAMPLES "Build examples" OFF)
|
||||
option(MYXLIB_BUILD_LIBRARIES "Build libraries" OFF)
|
||||
if(MYXLIB_BUILD_LIBRARIES)
|
||||
option(MYXLIB_BUILD_EXAMPLES "Build examples" OFF)
|
||||
endif()
|
||||
option(MYXLIB_BUILD_EXAMPLES_HO "Build examples using header only version" OFF)
|
||||
|
||||
# Поиск библиотек с помощью pkgconfig
|
||||
find_package(PkgConfig REQUIRED)
|
||||
@ -34,21 +37,7 @@ set(THREADS_PREFER_PTHREAD_FLAG ON)
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
# Qt5
|
||||
find_package(
|
||||
Qt5
|
||||
COMPONENTS
|
||||
Core
|
||||
Network
|
||||
REQUIRED)
|
||||
|
||||
# Автоматически генерируемый заголовочный файл
|
||||
# cmlib_config_hpp_generate()
|
||||
|
||||
# configure_file(${CMAKE_SOURCE_DIR}/src/myx/base/config_flags.hpp.in
|
||||
# ${CMAKE_BINARY_DIR}/include/myx/base/config_flags.hpp)
|
||||
|
||||
# Подключение внешних проектов
|
||||
include(ExternalProject)
|
||||
find_package(Qt5 COMPONENTS Core Network REQUIRED)
|
||||
|
||||
# Библиотеки
|
||||
add_subdirectory(src/myx/base)
|
||||
@ -58,7 +47,7 @@ add_subdirectory(src/myx/math)
|
||||
add_subdirectory(src/myx/redis)
|
||||
|
||||
# Примеры
|
||||
if(BUILD_EXAMPLES)
|
||||
if(MYXLIB_BUILD_EXAMPLES OR MYXLIB_BUILD_EXAMPLES_HO)
|
||||
add_subdirectory(examples/filesystem)
|
||||
add_subdirectory(examples/qt)
|
||||
|
||||
|
Reference in New Issue
Block a user