diff --git a/CMakeLists.txt b/CMakeLists.txt
index eac397f7781d787380801e43f6bbb470cdaf8ff8..4c760d0fdb97984e75cbc9ce051a7093eb83d464 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -241,9 +241,14 @@ if (NOT WIN32 AND NOT libcxx)
     list(GET __libcpp_full_paths_list 0 __libcpp_full_path)
 
     configure_file(${CMAKE_SOURCE_DIR}/build/unix/modulemap.overlay.yaml.in ${CMAKE_BINARY_DIR}/include/modulemap.overlay.yaml @ONLY)
+    configure_file(${CMAKE_SOURCE_DIR}/build/unix/modulemap-installed.overlay.yaml.in ${CMAKE_BINARY_DIR}/build/modulemap.overlay.yaml @ONLY)
+    install(FILES "${CMAKE_BINARY_DIR}/build/modulemap.overlay.yaml" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} COMPONENT headers)
 
     configure_file(${CMAKE_SOURCE_DIR}/build/unix/stl.modulemap ${CMAKE_BINARY_DIR}/include/stl.modulemap)
+    install(FILES "${CMAKE_BINARY_DIR}/include/stl.modulemap" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} COMPONENT headers)
     configure_file(${CMAKE_SOURCE_DIR}/build/unix/libc.modulemap ${CMAKE_BINARY_DIR}/include/libc.modulemap)
+    install(FILES "${CMAKE_BINARY_DIR}/include/libc.modulemap" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} COMPONENT headers)
+
   else()
     message(SEND_ERROR "Couldn't find c++ library paths, no modulemap overlay will be installed! (__libcpp_full_paths = '${__libcpp_full_paths}')")
   endif()
diff --git a/build/unix/modulemap-installed.overlay.yaml.in b/build/unix/modulemap-installed.overlay.yaml.in
new file mode 100644
index 0000000000000000000000000000000000000000..b367b01839aeca73e8f8c38ae07ec1ccbcf4c0d0
--- /dev/null
+++ b/build/unix/modulemap-installed.overlay.yaml.in
@@ -0,0 +1,19 @@
+{
+  'version': 0,
+  'roots': [
+    { 'name': '@__libcpp_full_path@', 'type': 'directory',
+      'contents': [
+        { 'name': 'module.modulemap', 'type': 'file',
+          'external-contents': '@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@/stl.modulemap'
+        }
+      ]
+    },
+    { 'name': '/usr/include/', 'type': 'directory',
+      'contents': [
+        { 'name': 'module.modulemap', 'type': 'file',
+          'external-contents': '@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@/libc.modulemap'
+        }
+      ]
+    }
+  ]
+}