phosek created this revision. phosek added reviewers: ldionne, EricWF. Herald added subscribers: cfe-commits, christof, mgorny.
This is a follow-up to r335809 and r337118. While libc++ headers are now installed into the right location in both standard as well as multiarch runtimes layout, turned out C++ ABI headers are still installed into the old location in the latter case. This change addresses that. Repository: rCXX libc++ https://reviews.llvm.org/D49584 Files: libcxx/cmake/Modules/HandleLibCXXABI.cmake Index: libcxx/cmake/Modules/HandleLibCXXABI.cmake =================================================================== --- libcxx/cmake/Modules/HandleLibCXXABI.cmake +++ libcxx/cmake/Modules/HandleLibCXXABI.cmake @@ -32,14 +32,6 @@ set(LIBCXX_CXX_ABI_LIBRARY ${abilib}) set(LIBCXX_ABILIB_FILES ${abifiles}) - # The place in the build tree where we store out-of-source headers. - file(MAKE_DIRECTORY "${LIBCXX_BUILD_HEADERS_ROOT}") - file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/include/c++/v1") - foreach(_d ${abidirs}) - file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}/${_d}") - file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/include/c++/v1/${_d}") - endforeach() - foreach(fpath ${LIBCXX_ABILIB_FILES}) set(found FALSE) foreach(incpath ${LIBCXX_CXX_ABI_INCLUDE_PATHS}) @@ -56,16 +48,16 @@ COMMENT "Copying C++ ABI header ${fpath}...") list(APPEND abilib_headers "${dst}") - set(dst "${CMAKE_BINARY_DIR}/include/c++/v1/${dstdir}/${fpath}") + set(dst "${LIBCXX_HEADER_DIR}/include/c++/v1/${dstdir}/${fpath}") add_custom_command(OUTPUT ${dst} DEPENDS ${src} COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst} COMMENT "Copying C++ ABI header ${fpath}...") list(APPEND abilib_headers "${dst}") if (LIBCXX_INSTALL_HEADERS) install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}" - DESTINATION ${LIBCXX_INSTALL_PATH}include/c++/v1/${dstdir} + DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir} COMPONENT cxx-headers PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ )
Index: libcxx/cmake/Modules/HandleLibCXXABI.cmake =================================================================== --- libcxx/cmake/Modules/HandleLibCXXABI.cmake +++ libcxx/cmake/Modules/HandleLibCXXABI.cmake @@ -32,14 +32,6 @@ set(LIBCXX_CXX_ABI_LIBRARY ${abilib}) set(LIBCXX_ABILIB_FILES ${abifiles}) - # The place in the build tree where we store out-of-source headers. - file(MAKE_DIRECTORY "${LIBCXX_BUILD_HEADERS_ROOT}") - file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/include/c++/v1") - foreach(_d ${abidirs}) - file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}/${_d}") - file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/include/c++/v1/${_d}") - endforeach() - foreach(fpath ${LIBCXX_ABILIB_FILES}) set(found FALSE) foreach(incpath ${LIBCXX_CXX_ABI_INCLUDE_PATHS}) @@ -56,16 +48,16 @@ COMMENT "Copying C++ ABI header ${fpath}...") list(APPEND abilib_headers "${dst}") - set(dst "${CMAKE_BINARY_DIR}/include/c++/v1/${dstdir}/${fpath}") + set(dst "${LIBCXX_HEADER_DIR}/include/c++/v1/${dstdir}/${fpath}") add_custom_command(OUTPUT ${dst} DEPENDS ${src} COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst} COMMENT "Copying C++ ABI header ${fpath}...") list(APPEND abilib_headers "${dst}") if (LIBCXX_INSTALL_HEADERS) install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}" - DESTINATION ${LIBCXX_INSTALL_PATH}include/c++/v1/${dstdir} + DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir} COMPONENT cxx-headers PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ )
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits