@@ -19,6 +19,7 @@ option(APPEND_PROJECT_NAME_TO_INCLUDEDIR
1919
2020if (APPEND_PROJECT_NAME_TO_INCLUDEDIR)
2121 set (CMAKE_INSTALL_INCLUDEDIR "${CMAKE_INSTALL_INCLUDEDIR} /${PROJECT_NAME} " )
22+ set (CMAKE_INSTALL_FULL_INCLUDEDIR "${CMAKE_INSTALL_FULL_INCLUDEDIR} /${PROJECT_NAME} " )
2223endif ()
2324
2425# set the default build type
@@ -59,16 +60,22 @@ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}"
5960
6061enable_testing ()
6162
62- set (CMAKE_CONFIG_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR } /${PROJECT_NAME} /cmake)
63- string ( REGEX REPLACE "[^/]+ " ".." RELATIVE_PATH_CMAKE_DIR_TO_PREFIX " ${CMAKE_CONFIG_INSTALL_DIR } " )
64- string ( REGEX REPLACE "[^/]+ " ".." RELATIVE_PATH_LIBDIR_TO_PREFIX " ${CMAKE_INSTALL_LIBDIR } " )
63+ set (CMAKE_CONFIG_INSTALL_DIR ${CMAKE_INSTALL_FULL_LIBDIR } /${PROJECT_NAME} /cmake)
64+ file (RELATIVE_PATH RELATIVE_PATH_CMAKE_DIR_TO_PREFIX " ${CMAKE_CONFIG_INSTALL_DIR} " "${CMAKE_INSTALL_PREFIX } " )
65+ file (RELATIVE_PATH RELATIVE_PATH_LIBDIR_TO_PREFIX " ${CMAKE_INSTALL_FULL_LIBDIR} " "${CMAKE_INSTALL_PREFIX } " )
6566
6667add_subdirectory (urdf_parser)
6768
6869set (PKG_NAME ${PROJECT_NAME} )
6970set (PKG_LIBRARIES urdfdom_sensor urdfdom_model_state urdfdom_model urdfdom_world)
7071set (PKG_DEPENDS urdfdom_headers)
7172set (PKG_EXPORTS urdfdom)
73+ string (REPLACE
74+ "${CMAKE_INSTALL_PREFIX} " "\$ {${PROJECT_NAME} _DIR}/${RELATIVE_PATH_CMAKE_DIR_TO_PREFIX} "
75+ CMAKE_CONF_LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR} " )
76+ string (REPLACE
77+ "${CMAKE_INSTALL_PREFIX} " "\$ {${PROJECT_NAME} _DIR}/${RELATIVE_PATH_CMAKE_DIR_TO_PREFIX} "
78+ CMAKE_CONF_INCLUDEDIR "${CMAKE_INSTALL_FULL_INCLUDEDIR} " )
7279set (cmake_conf_file "cmake/urdfdom-config" )
7380include (CMakePackageConfigHelpers)
7481write_basic_package_version_file(
@@ -92,7 +99,10 @@ install(FILES package.xml DESTINATION share/${PROJECT_NAME})
9299set (PKG_DESC "Unified Robot Description Format" )
93100set (PKG_DEPENDS "urdfdom_headers" ) # make the list separated by spaces instead of ;
94101set (PKG_URDF_LIBS "-lurdfdom_sensor -lurdfdom_model_state -lurdfdom_model -lurdfdom_world" )
102+ string (REPLACE "${CMAKE_INSTALL_PREFIX} " "\$ {prefix}" PKG_CONF_LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR} " )
103+ string (REPLACE "${CMAKE_INSTALL_PREFIX} " "\$ {prefix}" PKG_CONF_INCLUDEDIR "${CMAKE_INSTALL_FULL_INCLUDEDIR} " )
95104set (pkg_conf_file "cmake/pkgconfig/urdfdom.pc" )
105+
96106configure_file ("${CMAKE_CURRENT_SOURCE_DIR} /${pkg_conf_file} .in" "${CMAKE_BINARY_DIR} /${pkg_conf_file} " @ONLY)
97107install (FILES ${CMAKE_BINARY_DIR} /${pkg_conf_file}
98108 DESTINATION ${CMAKE_INSTALL_LIBDIR} /pkgconfig/ COMPONENT pkgconfig)
0 commit comments