diff --git a/install/CMakeLists.txt b/install/CMakeLists.txt index 336b2f9c..3c99dd24 100644 --- a/install/CMakeLists.txt +++ b/install/CMakeLists.txt @@ -17,6 +17,14 @@ endforeach() # Install package config files # +if(IS_ABSOLUTE CMAKE_INSTALL_INCLUDEDIR) + set(CMAKE_INSTALL_INCLUDEDIR_EXPORTS "${CMAKE_INSTALL_INCLUDEDIR}") + set(CMAKE_INSTALL_INCLUDEDIR_PC "${CMAKE_INSTALL_INCLUDEDIR}") +else() + set(CMAKE_INSTALL_INCLUDEDIR_EXPORTS "\${_IMPORT_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}") + set(CMAKE_INSTALL_INCLUDEDIR_PC "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}") +endif() + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/zenohcxx.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/zenohcxx.pc" @ONLY) if(APPLE OR UNIX) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/zenohcxx.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig" OPTIONAL COMPONENT dev) diff --git a/install/PackageConfig.cmake.in b/install/PackageConfig.cmake.in index 3033f726..b634108b 100644 --- a/install/PackageConfig.cmake.in +++ b/install/PackageConfig.cmake.in @@ -25,7 +25,7 @@ endif() if(NOT TARGET zenohcxx) add_library(zenohcxx INTERFACE IMPORTED) - target_include_directories(zenohcxx INTERFACE "${_IMPORT_PREFIX}/@CMAKE_INSTALL_INCLUDEDIR@") + target_include_directories(zenohcxx INTERFACE "@CMAKE_INSTALL_INCLUDEDIR_EXPORTS@") endif() # zenohcxx for zenohpico @@ -33,7 +33,7 @@ if(TARGET zenohpico::lib AND NOT TARGET zenohcxx_zenohpico) message(STATUS "defined lib target zenohcxx::zenohpico for zenohpico::lib") add_library(zenohcxx_zenohpico INTERFACE IMPORTED) target_compile_definitions(zenohcxx_zenohpico INTERFACE ZENOHCXX_ZENOHPICO) - target_include_directories(zenohcxx_zenohpico INTERFACE "${_IMPORT_PREFIX}/@CMAKE_INSTALL_INCLUDEDIR@") + target_include_directories(zenohcxx_zenohpico INTERFACE "@CMAKE_INSTALL_INCLUDEDIR_EXPORTS@") add_dependencies(zenohcxx_zenohpico zenohpico::lib) target_link_libraries(zenohcxx_zenohpico INTERFACE zenohpico::lib) add_library(zenohcxx::zenohpico ALIAS zenohcxx_zenohpico) @@ -44,7 +44,7 @@ if(TARGET zenohc::lib AND NOT TARGET zenohcxx_zenohc) message(STATUS "defined lib target zenohcxx::zenohc for zenohc::lib") add_library(zenohcxx_zenohc INTERFACE IMPORTED) target_compile_definitions(zenohcxx_zenohc INTERFACE ZENOHCXX_ZENOHC) - target_include_directories(zenohcxx_zenohc INTERFACE "${_IMPORT_PREFIX}/@CMAKE_INSTALL_INCLUDEDIR@") + target_include_directories(zenohcxx_zenohc INTERFACE "@CMAKE_INSTALL_INCLUDEDIR_EXPORTS@") add_dependencies(zenohcxx_zenohc zenohc::lib) target_link_libraries(zenohcxx_zenohc INTERFACE zenohc::lib) add_library(zenohcxx::zenohc ALIAS zenohcxx_zenohc) diff --git a/install/zenohcxx.pc.in b/install/zenohcxx.pc.in index 44932995..5fcd0908 100644 --- a/install/zenohcxx.pc.in +++ b/install/zenohcxx.pc.in @@ -4,4 +4,4 @@ Name: @PROJECT_NAME@ Description: @CMAKE_PROJECT_DESCRIPTION@ URL: @CMAKE_PROJECT_HOMEPAGE_URL@ Version: @PROJECT_VERSION@ -Cflags: -I${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ \ No newline at end of file +Cflags: -I@CMAKE_INSTALL_INCLUDEDIR_PC@