40 lines
1.2 KiB
CMake
40 lines
1.2 KiB
CMake
# Подключение внешних проектов
|
|
include(ExternalProject)
|
|
|
|
set(IONOBASE_PREFIX
|
|
${CMAKE_BINARY_DIR}
|
|
CACHE FILEPATH "" FORCE)
|
|
set(IONOBASE_INCLUDE_DIR
|
|
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR}/ionobase
|
|
CACHE PATH "" FORCE)
|
|
set(IONOBASE_INCLUDE_DIRS
|
|
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR}/ionobase
|
|
CACHE PATH "" FORCE)
|
|
set(IONOBASE_LIBRARY_DIR
|
|
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
|
|
CACHE PATH "" FORCE)
|
|
set(IONOBASE_LIBRARIES
|
|
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}/libionobase.a
|
|
CACHE FILEPATH "" FORCE)
|
|
|
|
# cmake-format: off
|
|
list(APPEND _ext_project_args
|
|
libionobase
|
|
SOURCE_DIR ${CMAKE_SOURCE_DIR}/thirdparty/libionobase
|
|
INSTALL_DIR ${CMAKE_BINARY_DIR}
|
|
CMAKE_ARGS ${MYX_CMAKE_EXTERNAL_PROJECT_ARGS}
|
|
<SOURCE_DIR>)
|
|
if(IonobaseThirdparty_FIND_COMPONENTS STREQUAL "headers")
|
|
list(APPEND _ext_project_args
|
|
BUILD_COMMAND true
|
|
INSTALL_COMMAND ${CMAKE_MAKE_PROGRAM} ionobase-install-headers)
|
|
else()
|
|
list(APPEND _ext_project_args
|
|
BUILD_BYPRODUCTS ${IONOBASE_LIBRARIES})
|
|
endif()
|
|
ExternalProject_Add(${_ext_project_args})
|
|
unset(_ext_project_args)
|
|
|
|
set(IONOBASE_IS_EXTERNAL_PROJECT ON CACHE BOOL "" FORCE)
|
|
# cmake-format: on
|