aboutsummaryrefslogtreecommitdiffhomepage
path: root/CMake
diff options
context:
space:
mode:
authorlevlam <levlam@telegram.org>2022-07-09 23:40:22 +0300
committerlevlam <levlam@telegram.org>2022-07-09 23:40:22 +0300
commitf083da4c1efb0d897a89f079bfcc25401d9da513 (patch)
tree315492f78960a25cd37c3d222803fcbee92e6058 /CMake
parentbb5ebc09effefe78228d9320bf797ca535092856 (diff)
Ignore CMAKE_INSTALL_PREFIX in pkgconfig, if CMAKE_INSTALL_*DIR is absolute.
Diffstat (limited to 'CMake')
-rw-r--r--CMake/GeneratePkgConfig.cmake16
1 files changed, 14 insertions, 2 deletions
diff --git a/CMake/GeneratePkgConfig.cmake b/CMake/GeneratePkgConfig.cmake
index b9154de13..afbe06ac6 100644
--- a/CMake/GeneratePkgConfig.cmake
+++ b/CMake/GeneratePkgConfig.cmake
@@ -64,6 +64,18 @@ function(generate_pkgconfig TARGET DESCRIPTION)
set(LIBRARIES "Libs.private:${LIBRARIES}\n")
endif()
+ if (IS_ABSOLUTE "${CMAKE_INSTALL_INCLUDEDIR}")
+ set(PKGCONFIG_INCLUDEDIR "${CMAKE_INSTALL_INCLUDEDIR}")
+ else()
+ set(PKGCONFIG_INCLUDEDIR "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
+ endif()
+
+ if (IS_ABSOLUTE "${CMAKE_INSTALL_LIBDIR}")
+ set(PKGCONFIG_LIBDIR "${CMAKE_INSTALL_LIBDIR}")
+ else()
+ set(PKGCONFIG_LIBDIR "\${prefix}/${CMAKE_INSTALL_LIBDIR}")
+ endif()
+
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig")
file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/${TARGET}.pc" CONTENT
"prefix=${PREFIX}
@@ -72,8 +84,8 @@ Name: ${TARGET}
Description: ${DESCRIPTION}
Version: ${PROJECT_VERSION}
-CFlags: -I\"\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}\"
-Libs: -L\"\${prefix}/${CMAKE_INSTALL_LIBDIR}\" -l${TARGET}
+CFlags: -I\"${PKGCONFIG_INCLUDEDIR}\"
+Libs: -L\"${PKGCONFIG_LIBDIR}\" -l${TARGET}
${REQUIRES}${LIBRARIES}")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/${TARGET}.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")