From f17227a1da6fca7d89fd072410784ff35154e2e5 Mon Sep 17 00:00:00 2001 From: Chris Bieneman Date: Wed, 24 Aug 2016 22:17:06 +0000 Subject: [PATCH] [CMake] Be more consistent about naming targets and components Summary: The point of this patch is to have a consistent convention for naming build, check and install targets so that the targets can be constructed from the project name. This change renames a bunch of CMake components and targets from libcxx to cxx. For each renamed target I've added a convenience target that matches the old target name and depends on the new target. This will preserve function of the old targets so that the change doesn't break the world. We can evaluate if it is worth removing the extra targets later. Reviewers: EricWF Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D23699 llvm-svn: 279675 --- libcxx/include/CMakeLists.txt | 15 +++++++++------ libcxx/lib/CMakeLists.txt | 11 ++++++----- libcxx/test/CMakeLists.txt | 4 +++- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/libcxx/include/CMakeLists.txt b/libcxx/include/CMakeLists.txt index 219d1b730839..054231639b99 100644 --- a/libcxx/include/CMakeLists.txt +++ b/libcxx/include/CMakeLists.txt @@ -19,7 +19,7 @@ file(COPY . if (LIBCXX_INSTALL_HEADERS) install(DIRECTORY . DESTINATION include/c++/v1 - COMPONENT libcxx-headers + COMPONENT cxx-headers FILES_MATCHING ${LIBCXX_HEADER_PATTERN} PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ @@ -47,17 +47,20 @@ if (LIBCXX_INSTALL_HEADERS) DESTINATION include/c++/v1 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ RENAME __config - COMPONENT libcxx-headers) + COMPONENT cxx-headers) endif() if (NOT CMAKE_CONFIGURATION_TYPES) # this target is just needed as a placeholder for the distribution target - add_custom_target(libcxx-headers) - add_custom_target(install-libcxx-headers - DEPENDS libcxx-headers ${generated_config_deps} + add_custom_target(cxx-headers) + add_custom_target(install-cxx-headers + DEPENDS cxx-headers ${generated_config_deps} COMMAND "${CMAKE_COMMAND}" - -DCMAKE_INSTALL_COMPONENT=libcxx-headers + -DCMAKE_INSTALL_COMPONENT=cxx-headers -P "${CMAKE_BINARY_DIR}/cmake_install.cmake") + + add_custom_target(libcxx-headers) + add_custom_target(install-libcxx-headers DEPENDS install-cxx-headers) endif() endif() diff --git a/libcxx/lib/CMakeLists.txt b/libcxx/lib/CMakeLists.txt index cabf2e66e105..37b54f39920e 100644 --- a/libcxx/lib/CMakeLists.txt +++ b/libcxx/lib/CMakeLists.txt @@ -225,8 +225,8 @@ if (LIBCXX_INSTALL_LIBRARY) set(experimental_lib cxx_experimental) endif() install(TARGETS ${LIBCXX_TARGETS} ${experimental_lib} - LIBRARY DESTINATION lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT libcxx - ARCHIVE DESTINATION lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT libcxx + LIBRARY DESTINATION lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx + ARCHIVE DESTINATION lib${LIBCXX_LIBDIR_SUFFIX} COMPONENT cxx ) # NOTE: This install command must go after the cxx install command otherwise # it will not be executed after the library symlinks are installed. @@ -248,13 +248,14 @@ if (NOT CMAKE_CONFIGURATION_TYPES AND (LIBCXX_INSTALL_LIBRARY OR set(experimental_lib_install_target cxx_experimental) endif() if(LIBCXX_INSTALL_HEADERS) - set(header_install_target install-libcxx-headers) + set(header_install_target install-cxx-headers) endif() - add_custom_target(install-libcxx + add_custom_target(install-cxx DEPENDS ${lib_install_target} ${experimental_lib_install_target} ${header_install_target} COMMAND "${CMAKE_COMMAND}" - -DCMAKE_INSTALL_COMPONENT=libcxx + -DCMAKE_INSTALL_COMPONENT=cxx -P "${LIBCXX_BINARY_DIR}/cmake_install.cmake") + add_custom_target(install-libcxx DEPENDS install-cxx) endif() diff --git a/libcxx/test/CMakeLists.txt b/libcxx/test/CMakeLists.txt index f206e92c2cc4..ed6f20d573bc 100644 --- a/libcxx/test/CMakeLists.txt +++ b/libcxx/test/CMakeLists.txt @@ -52,11 +52,13 @@ if (LIBCXX_ENABLE_EXPERIMENTAL_LIBRARY) set(experimental_dep cxx_experimental) endif() -add_lit_testsuite(check-libcxx +add_lit_testsuite(check-cxx "Running libcxx tests" ${CMAKE_CURRENT_BINARY_DIR} DEPENDS cxx ${experimental_dep}) +add_custom_target(check-libcxx DEPENDS check-cxx) + if (LIBCXX_GENERATE_COVERAGE) include(CodeCoverage) set(output_dir "${CMAKE_CURRENT_BINARY_DIR}/coverage")