mirror of
https://github.com/p-ranav/indicators.git
synced 2025-12-12 01:18:52 +08:00
Merge pull request #6 from myd7349/fix-headers-installation
Improve CMakeLists.txt
This commit is contained in:
@@ -2,8 +2,11 @@ cmake_minimum_required(VERSION 3.8)
|
|||||||
project(indica VERSION 1.0.0 LANGUAGES CXX)
|
project(indica VERSION 1.0.0 LANGUAGES CXX)
|
||||||
option(INDICA_BUILD_TESTS OFF)
|
option(INDICA_BUILD_TESTS OFF)
|
||||||
|
|
||||||
|
include(CMakePackageConfigHelpers)
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
|
find_package(Threads REQUIRED)
|
||||||
|
|
||||||
add_library(indica INTERFACE)
|
add_library(indica INTERFACE)
|
||||||
add_library(indica::indica ALIAS indica)
|
add_library(indica::indica ALIAS indica)
|
||||||
|
|
||||||
@@ -11,10 +14,20 @@ target_compile_features(indica INTERFACE cxx_std_11)
|
|||||||
target_include_directories(indica INTERFACE
|
target_include_directories(indica INTERFACE
|
||||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>)
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>)
|
||||||
|
target_link_libraries(indica INTERFACE Threads::Threads)
|
||||||
|
|
||||||
install(TARGETS indica EXPORT indicaConfig)
|
configure_package_config_file(indicaConfig.cmake.in
|
||||||
install(EXPORT indicaConfig
|
${CMAKE_CURRENT_BINARY_DIR}/indicaConfig.cmake
|
||||||
|
INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/indica)
|
||||||
|
|
||||||
|
install(TARGETS indica EXPORT indicaTargets)
|
||||||
|
install(EXPORT indicaTargets
|
||||||
|
FILE indicaTargets.cmake
|
||||||
NAMESPACE indica::
|
NAMESPACE indica::
|
||||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/indica)
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/indica)
|
||||||
install(FILES ${CMAKE_CURRENT_LIST_DIR}/include/indica.hpp
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/indicaConfig.cmake
|
||||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/indica)
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/indica)
|
||||||
|
install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/include/indicators
|
||||||
|
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||||
|
USE_SOURCE_PERMISSIONS
|
||||||
|
PATTERN "*.hpp")
|
||||||
|
|||||||
9
indicaConfig.cmake.in
Normal file
9
indicaConfig.cmake.in
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
@PACKAGE_INIT@
|
||||||
|
|
||||||
|
include(CMakeFindDependencyMacro)
|
||||||
|
|
||||||
|
find_dependency(Threads)
|
||||||
|
|
||||||
|
if (NOT TARGET indica::indica)
|
||||||
|
include(${CMAKE_CURRENT_LIST_DIR}/indicaTargets.cmake)
|
||||||
|
endif ()
|
||||||
Reference in New Issue
Block a user