|
|
13801a9 |
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
|
13801a9 |
index adaf04c..c68d430 100644
|
|
|
13801a9 |
--- a/CMakeLists.txt
|
|
|
13801a9 |
+++ b/CMakeLists.txt
|
|
|
13801a9 |
@@ -81,7 +81,7 @@ IF(NOT OpenIGTLink_INSTALL_INCLUDE_DIR)
|
|
|
13801a9 |
ENDIF(NOT OpenIGTLink_INSTALL_INCLUDE_DIR)
|
|
|
13801a9 |
|
|
|
13801a9 |
IF(NOT OpenIGTLink_INSTALL_PACKAGE_DIR)
|
|
|
13801a9 |
- SET(OpenIGTLink_INSTALL_PACKAGE_DIR ${OpenIGTLink_INSTALL_LIB_DIR}
|
|
|
13801a9 |
+ SET(OpenIGTLink_INSTALL_PACKAGE_DIR "${OpenIGTLink_INSTALL_LIB_DIR}/cmake/igtl-${OpenIGTLink_VERSION_MAJOR}.${OpenIGTLink_VERSION_MINOR}"
|
|
|
13801a9 |
CACHE INTERNAL "")
|
|
|
13801a9 |
ENDIF(NOT OpenIGTLink_INSTALL_PACKAGE_DIR)
|
|
|
13801a9 |
|
|
|
13801a9 |
@@ -188,9 +188,8 @@ CMAKE_EXPORT_BUILD_SETTINGS(${OpenIGTLink_BINARY_DIR}/OpenIGTLinkBuildSettings.c
|
|
|
13801a9 |
|
|
|
13801a9 |
INSTALL(FILES
|
|
|
13801a9 |
${OpenIGTLink_BINARY_DIR}/OpenIGTLinkBuildSettings.cmake
|
|
|
13801a9 |
- ${OpenIGTLink_LIBRARY_TARGETS_FILE}
|
|
|
13801a9 |
${OpenIGTLink_BINARY_DIR}/UseOpenIGTLink.cmake
|
|
|
13801a9 |
- ${OpenIGTLink_BINARY_DIR}/OpenIGTLinkConfig.cmake
|
|
|
13801a9 |
+ ${OpenIGTLink_BINARY_DIR}/Utilities/OpenIGTLinkConfig.cmake
|
|
|
13801a9 |
DESTINATION ${OpenIGTLink_INSTALL_PACKAGE_DIR}
|
|
|
13801a9 |
COMPONENT Development
|
|
|
13801a9 |
)
|
|
|
13801a9 |
@@ -236,11 +235,15 @@ ENDIF(OpenIGTLink_BUILD_EXAMPLES)
|
|
|
13801a9 |
|
|
|
13801a9 |
#-----------------------------------------------------------------------------
|
|
|
13801a9 |
# Export targets
|
|
|
13801a9 |
-export(TARGETS
|
|
|
13801a9 |
- OpenIGTLink
|
|
|
13801a9 |
+export(TARGETS OpenIGTLink
|
|
|
13801a9 |
FILE "${OpenIGTLink_LIBRARY_TARGETS_FILE}"
|
|
|
13801a9 |
)
|
|
|
13801a9 |
|
|
|
13801a9 |
+# Export targets for install
|
|
|
13801a9 |
+INSTALL(EXPORT OpenIGTLink
|
|
|
13801a9 |
+ DESTINATION "${OpenIGTLink_INSTALL_PACKAGE_DIR}"
|
|
|
13801a9 |
+ FILE "OpenIGTLinkTargets.cmake"
|
|
|
13801a9 |
+ )
|
|
|
13801a9 |
|
|
|
13801a9 |
#-----------------------------------------------------------------------------
|
|
|
13801a9 |
# Tests
|
|
|
13801a9 |
diff --git a/GenerateOpenIGTLinkConfig.cmake b/GenerateOpenIGTLinkConfig.cmake
|
|
|
13801a9 |
index 94f7d62..90602b9 100644
|
|
|
13801a9 |
--- a/GenerateOpenIGTLinkConfig.cmake
|
|
|
13801a9 |
+++ b/GenerateOpenIGTLinkConfig.cmake
|
|
|
13801a9 |
@@ -41,8 +41,11 @@ CONFIGURE_FILE(${OpenIGTLink_SOURCE_DIR}/OpenIGTLinkConfig.cmake.in
|
|
|
13801a9 |
#-----------------------------------------------------------------------------
|
|
|
13801a9 |
# Settings specific to the install tree.
|
|
|
13801a9 |
|
|
|
13801a9 |
+# store old OpenIGTLink_LIBRARY_TARGETS_FILE
|
|
|
13801a9 |
+SET(OpenIGTLink_LIBRARY_TARGETS_FILE_BUILDTREE ${OpenIGTLink_LIBRARY_TARGETS_FILE})
|
|
|
13801a9 |
+
|
|
|
13801a9 |
# The library dependencies file.
|
|
|
13801a9 |
-SET(OpenIGTLink_LIBRARY_DEPENDS_FILE "\${OpenIGTLink_INSTALL_PREFIX}/${OpenIGTLink_INSTALL_PACKAGE_DIR}/OpenIGTLinkLibraryDepends.cmake")
|
|
|
13801a9 |
+SET(OpenIGTLink_LIBRARY_TARGETS_FILE "\${OpenIGTLink_INSTALL_PREFIX}/${OpenIGTLink_INSTALL_PACKAGE_DIR}/OpenIGTLinkTargets.cmake")
|
|
|
13801a9 |
|
|
|
13801a9 |
# The "use" file.
|
|
|
13801a9 |
SET(OpenIGTLink_USE_FILE \${OpenIGTLink_INSTALL_PREFIX}/${OpenIGTLink_INSTALL_PACKAGE_DIR}/UseOpenIGTLink.cmake)
|
|
|
13801a9 |
@@ -65,20 +68,12 @@ SET(OpenIGTLink_LIBRARY_DIRS_CONFIG "\${OpenIGTLink_INSTALL_PREFIX}/${OpenIGTLin
|
|
|
13801a9 |
#-----------------------------------------------------------------------------
|
|
|
13801a9 |
# Configure OpenIGTLinkConfig.cmake for the install tree.
|
|
|
13801a9 |
|
|
|
13801a9 |
-# Construct the proper number of GET_FILENAME_COMPONENT(... PATH)
|
|
|
13801a9 |
-# calls to compute the installation prefix.
|
|
|
13801a9 |
-STRING(REGEX REPLACE "/" ";" OpenIGTLink_INSTALL_PACKAGE_DIR_COUNT
|
|
|
13801a9 |
- "${OpenIGTLink_INSTALL_PACKAGE_DIR}")
|
|
|
13801a9 |
SET(OpenIGTLink_CONFIG_CODE "
|
|
|
13801a9 |
-# Compute the installation prefix from this OpenIGTLinkConfig.cmake file location.
|
|
|
13801a9 |
-GET_FILENAME_COMPONENT(OpenIGTLink_INSTALL_PREFIX \"\${CMAKE_CURRENT_LIST_FILE}\" PATH)")
|
|
|
13801a9 |
-FOREACH(p ${OpenIGTLink_INSTALL_PACKAGE_DIR_COUNT})
|
|
|
13801a9 |
- SET(OpenIGTLink_CONFIG_CODE
|
|
|
13801a9 |
- "${OpenIGTLink_CONFIG_CODE}\nGET_FILENAME_COMPONENT(OpenIGTLink_INSTALL_PREFIX \"\${OpenIGTLink_INSTALL_PREFIX}\" PATH)"
|
|
|
13801a9 |
- )
|
|
|
13801a9 |
-ENDFOREACH(p)
|
|
|
13801a9 |
-
|
|
|
13801a9 |
+SET(OpenIGTLink_INSTALL_PREFIX \"${CMAKE_INSTALL_PREFIX}\")")
|
|
|
13801a9 |
|
|
|
13801a9 |
CONFIGURE_FILE(${OpenIGTLink_SOURCE_DIR}/OpenIGTLinkConfig.cmake.in
|
|
|
13801a9 |
${OpenIGTLink_BINARY_DIR}/Utilities/OpenIGTLinkConfig.cmake @ONLY IMMEDIATE)
|
|
|
13801a9 |
|
|
|
13801a9 |
+# restore old OpenIGTLink_LIBRARY_TARGETS_FILE
|
|
|
13801a9 |
+SET(OpenIGTLink_LIBRARY_TARGETS_FILE ${OpenIGTLink_LIBRARY_TARGETS_FILE_BUILDTREE})
|
|
|
13801a9 |
+
|
|
|
13801a9 |
diff --git a/OpenIGTLinkConfig.cmake.in b/OpenIGTLinkConfig.cmake.in
|
|
|
13801a9 |
index 2dc5b00..ad9bcea 100644
|
|
|
13801a9 |
--- a/OpenIGTLinkConfig.cmake.in
|
|
|
13801a9 |
+++ b/OpenIGTLinkConfig.cmake.in
|
|
|
13801a9 |
@@ -47,5 +47,5 @@ SET(OpenIGTLink_CableSwig_DIR "@OpenIGTLink_CableSwig_DIR_CONFIG@")
|
|
|
13801a9 |
SET(OpenIGTLink_LIBRARIES OpenIGTLink)
|
|
|
13801a9 |
|
|
|
13801a9 |
# The OpenIGTLink library targets.
|
|
|
13801a9 |
-SET(OpenIGTLink_LIBRARY_TARGETS_FILE @OpenIGTLink_LIBRARY_TARGETS_FILE@)
|
|
|
13801a9 |
+SET(OpenIGTLink_LIBRARY_TARGETS_FILE "@OpenIGTLink_LIBRARY_TARGETS_FILE@")
|
|
|
13801a9 |
include(${OpenIGTLink_LIBRARY_TARGETS_FILE})
|
|
|
13801a9 |
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
|
|
|
13801a9 |
index 536c11f..ddd5d87 100644
|
|
|
13801a9 |
--- a/Source/CMakeLists.txt
|
|
|
13801a9 |
+++ b/Source/CMakeLists.txt
|
|
|
13801a9 |
@@ -30,8 +30,7 @@ ENDIF(OpenIGTLink_PLATFORM_WIN32)
|
|
|
13801a9 |
|
|
|
13801a9 |
ADD_SUBDIRECTORY( igtlutil )
|
|
|
13801a9 |
|
|
|
13801a9 |
-set(OpenIGTLink_INCLUDE_DIRS
|
|
|
13801a9 |
- PUBLIC
|
|
|
13801a9 |
+SET(OpenIGTLink_INCLUDE_DIRS
|
|
|
13801a9 |
${CMAKE_BINARY_DIR}
|
|
|
13801a9 |
${CMAKE_CURRENT_SOURCE_DIR}
|
|
|
13801a9 |
${CMAKE_CURRENT_BINARY_DIR}
|
|
|
13801a9 |
@@ -180,21 +179,16 @@ IF (${OpenIGTLink_PROTOCOL_VERSION} GREATER "1" )
|
|
|
13801a9 |
)
|
|
|
13801a9 |
ENDIF ( ${OpenIGTLink_PROTOCOL_VERSION} GREATER "1")
|
|
|
13801a9 |
|
|
|
13801a9 |
-IF( ${CMAKE_GENERATOR} MATCHES "Visual Studio" )
|
|
|
13801a9 |
-ADD_LIBRARY(OpenIGTLink
|
|
|
13801a9 |
- ${OpenIGTLink_SOURCES}
|
|
|
13801a9 |
- ${OpenIGTLink_INCLUDE_FILES}
|
|
|
13801a9 |
- )
|
|
|
13801a9 |
-ELSE ( ${CMAKE_GENERATOR} MATCHES "Visual Studio" )
|
|
|
13801a9 |
-ADD_LIBRARY(OpenIGTLink
|
|
|
13801a9 |
- ${OpenIGTLink_SOURCES}
|
|
|
13801a9 |
- )
|
|
|
13801a9 |
-ENDIF( ${CMAKE_GENERATOR} MATCHES "Visual Studio" )
|
|
|
13801a9 |
+ADD_LIBRARY(OpenIGTLink ${OpenIGTLink_SOURCES} ${OpenIGTLink_INCLUDE_FILES})
|
|
|
13801a9 |
+foreach(p IN LISTS OpenIGTLink_INCLUDE_DIRS)
|
|
|
13801a9 |
+ target_include_directories(OpenIGTLink PUBLIC
|
|
|
13801a9 |
+ $<BUILD_INTERFACE:${p}>)
|
|
|
13801a9 |
+endforeach()
|
|
|
13801a9 |
+target_include_directories(OpenIGTLink PUBLIC
|
|
|
13801a9 |
+ $<INSTALL_INTERFACE:${OpenIGTLink_INSTALL_INCLUDE_DIR}>)
|
|
|
13801a9 |
+
|
|
|
13801a9 |
+TARGET_LINK_LIBRARIES(OpenIGTLink PUBLIC ${LINK_LIBS})
|
|
|
13801a9 |
|
|
|
13801a9 |
-include_directories(OpenIGTLink ${OpenIGTLink_INCLUDE_DIRS})
|
|
|
13801a9 |
-TARGET_LINK_LIBRARIES(OpenIGTLink
|
|
|
13801a9 |
- ${LINK_LIBS}
|
|
|
13801a9 |
- )
|
|
|
13801a9 |
IF(MSVC)
|
|
|
13801a9 |
target_compile_options(OpenIGTLink PRIVATE /MP)
|
|
|
13801a9 |
ENDIF()
|
|
|
13801a9 |
@@ -208,7 +202,7 @@ INSTALL(FILES ${OpenIGTLink_INCLUDE_FILES}
|
|
|
13801a9 |
DESTINATION ${OpenIGTLink_INSTALL_INCLUDE_DIR}
|
|
|
13801a9 |
COMPONENT Development)
|
|
|
13801a9 |
|
|
|
13801a9 |
-INSTALL(TARGETS OpenIGTLink
|
|
|
13801a9 |
+INSTALL(TARGETS OpenIGTLink EXPORT OpenIGTLink
|
|
|
13801a9 |
RUNTIME DESTINATION ${OpenIGTLink_INSTALL_BIN_DIR} COMPONENT RuntimeLibraries
|
|
|
13801a9 |
LIBRARY DESTINATION ${OpenIGTLink_INSTALL_LIB_DIR} COMPONENT RuntimeLibraries
|
|
|
13801a9 |
- ARCHIVE DESTINATION ${OpenIGTLink_INSTALL_LIB_DIR} COMPONENT Development)
|
|
|
13801a9 |
\ No newline at end of file
|
|
|
13801a9 |
+ ARCHIVE DESTINATION ${OpenIGTLink_INSTALL_LIB_DIR} COMPONENT Development)
|