Поддержка сборки пакетов
This commit is contained in:
Submodule cmake/cmlib updated: 7cd6a6514e...026655f712
Submodule cmake/doc updated: 30b457bbc4...62d017b2e9
@ -2,12 +2,10 @@
|
|||||||
set(TRGT cmlib-example)
|
set(TRGT cmlib-example)
|
||||||
|
|
||||||
# Список файлов исходных текстов
|
# Список файлов исходных текстов
|
||||||
set(TRGT_sources
|
set(TRGT_sources ${CMAKE_CURRENT_SOURCE_DIR}/init.cpp)
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/init.cpp)
|
|
||||||
|
|
||||||
# Список заголовочных файлов (используется для установки)
|
# Список заголовочных файлов (используется для установки)
|
||||||
set(TRGT_headers
|
set(TRGT_headers ${CMAKE_CURRENT_SOURCE_DIR}/init.hpp)
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/init.hpp)
|
|
||||||
|
|
||||||
# Функция для создания цели, результатом которой будет сборка библиотеки
|
# Функция для создания цели, результатом которой будет сборка библиотеки
|
||||||
add_common_library(TARGET ${TRGT} SOURCES ${TRGT_sources})
|
add_common_library(TARGET ${TRGT} SOURCES ${TRGT_sources})
|
||||||
@ -18,28 +16,19 @@ target_include_directories(${TRGT} SYSTEM PUBLIC ${Boost_INCLUDE_DIRS})
|
|||||||
|
|
||||||
# Цель, используемая только для установки
|
# Цель, используемая только для установки
|
||||||
# заголовочных файлов без компиляции проекта
|
# заголовочных файлов без компиляции проекта
|
||||||
add_custom_target(
|
add_custom_target(${TRGT}-install-headers COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_COMPONENT=DEV -P
|
||||||
${TRGT}-install-headers
|
|
||||||
COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_COMPONENT=headers -P
|
|
||||||
"${CMAKE_BINARY_DIR}/cmake_install.cmake")
|
"${CMAKE_BINARY_DIR}/cmake_install.cmake")
|
||||||
|
|
||||||
# Установка статической библиотеки
|
# Установка статической библиотеки
|
||||||
install(TARGETS ${TRGT}_static
|
install(TARGETS ${TRGT}_static COMPONENT DEV ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
||||||
|
|
||||||
# Установка динамической библиотеки
|
# Установка динамической библиотеки
|
||||||
if(BUILD_SHARED_LIBS)
|
if(BUILD_SHARED_LIBS)
|
||||||
install(TARGETS ${TRGT}_shared
|
install(TARGETS ${TRGT}_shared COMPONENT DEV LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Установка заголовочных файлов
|
# Установка заголовочных файлов
|
||||||
install(
|
install(FILES ${TRGT_headers} COMPONENT DEV DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${TRGT})
|
||||||
FILES ${TRGT_headers}
|
|
||||||
COMPONENT headers
|
|
||||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${current_target})
|
|
||||||
|
|
||||||
# Установка файла для pkg-config
|
# Установка файла для pkg-config
|
||||||
install(FILES ${CMAKE_BINARY_DIR}/${TRGT}.pc
|
install(FILES ${CMAKE_BINARY_DIR}/${TRGT}.pc COMPONENT DEV DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
||||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user