diff --git a/CMakeLists.txt b/CMakeLists.txt index b80c3fe21..b19a9aeea 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -277,10 +277,16 @@ else (build_errors) ######################################## # Make the package config file + set(PC_CONFIG_INSTALL_DIR ${LIB_INSTALL_DIR}/pkgconfig) + file(RELATIVE_PATH + PC_CONFIG_RELATIVE_PATH_TO_PREFIX + "${CMAKE_INSTALL_PREFIX}/${PC_CONFIG_INSTALL_DIR}" + "${CMAKE_INSTALL_PREFIX}" + ) configure_file(${CMAKE_SOURCE_DIR}/cmake/sdformat_pc.in ${CMAKE_CURRENT_BINARY_DIR}/cmake/${PROJECT_NAME_LOWER}.pc @ONLY) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cmake/${PROJECT_NAME_LOWER}.pc DESTINATION - ${LIB_INSTALL_DIR}/pkgconfig COMPONENT pkgconfig) + ${PC_CONFIG_INSTALL_DIR} COMPONENT pkgconfig) ######################################## # Configure documentation uploader diff --git a/cmake/sdf_config.cmake.in b/cmake/sdf_config.cmake.in index 4fdf9f208..eea1d4022 100644 --- a/cmake/sdf_config.cmake.in +++ b/cmake/sdf_config.cmake.in @@ -17,14 +17,14 @@ if(NOT TARGET @sdf_import_target_name@) include("${CMAKE_CURRENT_LIST_DIR}/@sdf_target_output_filename@") endif() -list(APPEND @PKG_NAME@_INCLUDE_DIRS "@CMAKE_INSTALL_PREFIX@/include/sdformat-@SDF_VERSION@") +list(APPEND @PKG_NAME@_INCLUDE_DIRS "${PACKAGE_PREFIX_DIR}/include/sdformat-@SDF_VERSION@") -list(APPEND @PKG_NAME@_CFLAGS "-I@CMAKE_INSTALL_PREFIX@/include/sdformat-@SDF_VERSION@") +list(APPEND @PKG_NAME@_CFLAGS "-I${PACKAGE_PREFIX_DIR}/include/sdformat-@SDF_VERSION@") if (NOT WIN32) list(APPEND @PKG_NAME@_CXX_FLAGS "${@PKG_NAME@_CFLAGS} -std=c++17") endif() -list(APPEND @PKG_NAME@_LIBRARY_DIRS "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@") +list(APPEND @PKG_NAME@_LIBRARY_DIRS "${PACKAGE_PREFIX_DIR}/@CMAKE_INSTALL_LIBDIR@") set(@PKG_NAME@_LIBRARIES @sdf_import_target_name@) @@ -41,4 +41,4 @@ find_package(ignition-utils@IGN_UTILS_VER@) list(APPEND @PKG_NAME@_INCLUDE_DIRS ${IGNITION-UTILS_INCLUDE_DIRS}) list(APPEND @PKG_NAME@_LIBRARY_DIRS ${IGNITION-UTILS_LIBRARY_DIRS}) -list(APPEND @PKG_NAME@_LDFLAGS "-L@CMAKE_INSTALL_PREFIX@/@LIB_INSTALL_DIR@") +list(APPEND @PKG_NAME@_LDFLAGS "-L${PACKAGE_PREFIX_DIR}/@LIB_INSTALL_DIR@") diff --git a/cmake/sdformat_pc.in b/cmake/sdformat_pc.in index c95a781e2..9ccfa4fbc 100644 --- a/cmake/sdformat_pc.in +++ b/cmake/sdformat_pc.in @@ -1,4 +1,4 @@ -prefix="@CMAKE_INSTALL_PREFIX@" +prefix=${pcfiledir}/@PC_CONFIG_RELATIVE_PATH_TO_PREFIX@ libdir=${prefix}/@LIB_INSTALL_DIR@ includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@