[libc][cmake] separate installing headers
authorMichael Jones <michaelrj@google.com>
Thu, 15 Sep 2022 18:24:47 +0000 (11:24 -0700)
committerMichael Jones <michaelrj@google.com>
Fri, 16 Sep 2022 22:50:28 +0000 (15:50 -0700)
Now libc headers can be installed separately from installing the rest of
the libc.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D133960

libc/CMakeLists.txt
libc/include/CMakeLists.txt

index 15af224..2c403b9 100644 (file)
@@ -148,7 +148,7 @@ set(LIBC_INSTALL_TARGET)
 if(LLVM_LIBC_FULL_BUILD)
   set(LIBC_TARGET libc)
   set(LIBC_COMPONENT libc)
-  set(LIBC_INSTALL_DEPENDS "libc;libc-headers;libc-startup")
+  set(LIBC_INSTALL_DEPENDS "libc;install-libc-headers;libc-startup")
   set(LIBC_INSTALL_TARGET install-libc)
   set(LIBC_ARCHIVE_NAME c)
 else()
@@ -187,6 +187,15 @@ if (LIBC_INCLUDE_DOCS)
   add_subdirectory(docs)
 endif()
 
+
+if(LLVM_LIBC_FULL_BUILD)
+  add_llvm_install_targets(
+    install-libc-headers
+    DEPENDS libc-headers
+    COMPONENT libc-headers
+  )
+endif()
+
 add_llvm_install_targets(
   ${LIBC_INSTALL_TARGET}
   DEPENDS ${LIBC_INSTALL_DEPENDS}
index f9aefb7..04354c7 100644 (file)
@@ -286,5 +286,5 @@ foreach(target IN LISTS all_install_header_targets)
   get_filename_component(nested_dir ${relative_path} DIRECTORY)
   install(FILES ${header_file}
           DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${nested_dir}
-          COMPONENT ${LIBC_COMPONENT})
+          COMPONENT libc-headers)
 endforeach()