From 724d1aad39ffe6ec4bd74b5f119d293f241d312a Mon Sep 17 00:00:00 2001 From: otegami Date: Wed, 8 May 2024 21:01:53 +0800 Subject: [PATCH] Fix header file installation paths to respect `CMAKE_INSTALL_INCLUDEDIR` Previously, header files were installed uniformly under the include directory, ignoring the specified paths. This change ensures header files are installed in the appropriate directories under `CMAKE_INSTALL_INCLUDEDIR`. --- CMakeLists.txt | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 03d76d8b8..3d8894b40 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -271,12 +271,14 @@ INSTALL (TARGETS ${MSGPACK_INSTALLTARGETS} EXPORT msgpack-c-targets ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ) FOREACH (file ${msgpack-c_common_HEADERS}) - GET_FILENAME_COMPONENT (dir ${file} PATH) - INSTALL (FILES ${file} DESTINATION ${dir}) + GET_FILENAME_COMPONENT(dir ${file} DIRECTORY) + STRING(REPLACE "include" "${CMAKE_INSTALL_INCLUDEDIR}" header_path ${dir}) + INSTALL (FILES ${file} DESTINATION ${header_path}) ENDFOREACH () FOREACH (file ${msgpack-c_configured_HEADERS}) - GET_FILENAME_COMPONENT (dir ${file} PATH) - INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/${file} DESTINATION ${dir}) + GET_FILENAME_COMPONENT(dir ${file} DIRECTORY) + STRING(REPLACE "include" "${CMAKE_INSTALL_INCLUDEDIR}" header_path ${dir}) + INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/${file} DESTINATION ${header_path}) ENDFOREACH () IF (NOT MSVC) INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/msgpack-c.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)