Move internal runtime support headers to an `internal` subdirectory.

In the end, simplest is best.

PiperOrigin-RevId: 502689484
diff --git a/rs_bindings_from_cc/BUILD b/rs_bindings_from_cc/BUILD
index f236164..36c8756 100644
--- a/rs_bindings_from_cc/BUILD
+++ b/rs_bindings_from_cc/BUILD
@@ -43,7 +43,7 @@
 deps_for_bindings(
     name = "deps_for_bindings",
     deps_for_generated_cc_file = [
-        "//support:rs_api_impl_support",
+        "//support/internal:rs_api_impl_support",
     ],
     deps_for_generated_rs_file = [
         # Required for struct layout assertions added to the generated
diff --git a/rs_bindings_from_cc/src_code_gen.rs b/rs_bindings_from_cc/src_code_gen.rs
index ce64ab6..1f4de6d 100644
--- a/rs_bindings_from_cc/src_code_gen.rs
+++ b/rs_bindings_from_cc/src_code_gen.rs
@@ -3964,7 +3964,7 @@
     if ir.records().next().is_some() {
         internal_includes.insert(CcInclude::cstddef());
     };
-    for crubit_header in ["cxx20_backports.h", "offsetof.h"] {
+    for crubit_header in ["internal/cxx20_backports.h", "internal/offsetof.h"] {
         internal_includes.insert(CcInclude::user_header(
             format!("{crubit_support_path}/{crubit_header}").into(),
         ));
diff --git a/rs_bindings_from_cc/test/golden/bitfields_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/bitfields_rs_api_impl.cc
index 542e5ba..7165dc5 100644
--- a/rs_bindings_from_cc/test/golden/bitfields_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/bitfields_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/bitfields.h"
diff --git a/rs_bindings_from_cc/test/golden/clang_attrs_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/clang_attrs_rs_api_impl.cc
index e998805..b509508 100644
--- a/rs_bindings_from_cc/test/golden/clang_attrs_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/clang_attrs_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/clang_attrs.h"
diff --git a/rs_bindings_from_cc/test/golden/comment_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/comment_rs_api_impl.cc
index 090e2f4..10fed4b 100644
--- a/rs_bindings_from_cc/test/golden/comment_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/comment_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/comment.h"
diff --git a/rs_bindings_from_cc/test/golden/doc_comment_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/doc_comment_rs_api_impl.cc
index 2823744..29a445c 100644
--- a/rs_bindings_from_cc/test/golden/doc_comment_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/doc_comment_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/doc_comment.h"
diff --git a/rs_bindings_from_cc/test/golden/escaping_keywords_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/escaping_keywords_rs_api_impl.cc
index be91464..4a086a6 100644
--- a/rs_bindings_from_cc/test/golden/escaping_keywords_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/escaping_keywords_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/escaping_keywords.h"
diff --git a/rs_bindings_from_cc/test/golden/friend_functions_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/friend_functions_rs_api_impl.cc
index 281f5a3..46fc609 100644
--- a/rs_bindings_from_cc/test/golden/friend_functions_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/friend_functions_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/friend_functions.h"
diff --git a/rs_bindings_from_cc/test/golden/inheritance_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/inheritance_rs_api_impl.cc
index 5f7cff4..aaa0f13 100644
--- a/rs_bindings_from_cc/test/golden/inheritance_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/inheritance_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/inheritance.h"
diff --git a/rs_bindings_from_cc/test/golden/item_order_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/item_order_rs_api_impl.cc
index cd30a59..90df916 100644
--- a/rs_bindings_from_cc/test/golden/item_order_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/item_order_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/item_order.h"
diff --git a/rs_bindings_from_cc/test/golden/lifetimes_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/lifetimes_rs_api_impl.cc
index 1546b19..892b44f 100644
--- a/rs_bindings_from_cc/test/golden/lifetimes_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/lifetimes_rs_api_impl.cc
@@ -7,8 +7,8 @@
 
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/lifetimes.h"
diff --git a/rs_bindings_from_cc/test/golden/method_qualifiers_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/method_qualifiers_rs_api_impl.cc
index e87584b..a27db28 100644
--- a/rs_bindings_from_cc/test/golden/method_qualifiers_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/method_qualifiers_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/method_qualifiers.h"
diff --git a/rs_bindings_from_cc/test/golden/namespace_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/namespace_rs_api_impl.cc
index 3a6c706..0db9bff 100644
--- a/rs_bindings_from_cc/test/golden/namespace_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/namespace_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/namespace.h"
diff --git a/rs_bindings_from_cc/test/golden/no_elided_lifetimes_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/no_elided_lifetimes_rs_api_impl.cc
index 50246fd..7ca63d9 100644
--- a/rs_bindings_from_cc/test/golden/no_elided_lifetimes_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/no_elided_lifetimes_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/no_elided_lifetimes.h"
diff --git a/rs_bindings_from_cc/test/golden/no_unique_address_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/no_unique_address_rs_api_impl.cc
index bcf3f07..e3cdbcc 100644
--- a/rs_bindings_from_cc/test/golden/no_unique_address_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/no_unique_address_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/no_unique_address.h"
diff --git a/rs_bindings_from_cc/test/golden/nontrivial_type_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/nontrivial_type_rs_api_impl.cc
index 31bbdad..3546d22 100644
--- a/rs_bindings_from_cc/test/golden/nontrivial_type_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/nontrivial_type_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/nontrivial_type.h"
diff --git a/rs_bindings_from_cc/test/golden/operators_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/operators_rs_api_impl.cc
index 9a08082..905413a 100644
--- a/rs_bindings_from_cc/test/golden/operators_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/operators_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/operators.h"
diff --git a/rs_bindings_from_cc/test/golden/overloads_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/overloads_rs_api_impl.cc
index 036d073..53aa181 100644
--- a/rs_bindings_from_cc/test/golden/overloads_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/overloads_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/overloads.h"
diff --git a/rs_bindings_from_cc/test/golden/polymorphic_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/polymorphic_rs_api_impl.cc
index 49c402e..e3b4a6a 100644
--- a/rs_bindings_from_cc/test/golden/polymorphic_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/polymorphic_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/polymorphic.h"
diff --git a/rs_bindings_from_cc/test/golden/private_members_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/private_members_rs_api_impl.cc
index 6ea2f7e..4d5fd58 100644
--- a/rs_bindings_from_cc/test/golden/private_members_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/private_members_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/private_members.h"
diff --git a/rs_bindings_from_cc/test/golden/private_method_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/private_method_rs_api_impl.cc
index b842b4d..0201bf4 100644
--- a/rs_bindings_from_cc/test/golden/private_method_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/private_method_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/private_method.h"
diff --git a/rs_bindings_from_cc/test/golden/static_methods_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/static_methods_rs_api_impl.cc
index c5d78d7..459a47e 100644
--- a/rs_bindings_from_cc/test/golden/static_methods_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/static_methods_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/static_methods.h"
diff --git a/rs_bindings_from_cc/test/golden/templates_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/templates_rs_api_impl.cc
index 3a51c18..4edf4e3 100644
--- a/rs_bindings_from_cc/test/golden/templates_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/templates_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/templates.h"
diff --git a/rs_bindings_from_cc/test/golden/templates_source_order_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/templates_source_order_rs_api_impl.cc
index 711b17c..9501da4 100644
--- a/rs_bindings_from_cc/test/golden/templates_source_order_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/templates_source_order_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/templates_source_order.h"
diff --git a/rs_bindings_from_cc/test/golden/trivial_type_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/trivial_type_rs_api_impl.cc
index 10ab546..70eebf1 100644
--- a/rs_bindings_from_cc/test/golden/trivial_type_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/trivial_type_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/trivial_type.h"
diff --git a/rs_bindings_from_cc/test/golden/typedefs_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/typedefs_rs_api_impl.cc
index afc15fc..ca4f74f 100644
--- a/rs_bindings_from_cc/test/golden/typedefs_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/typedefs_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/typedefs.h"
diff --git a/rs_bindings_from_cc/test/golden/types_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/types_rs_api_impl.cc
index 661a1c4..4c4ac3a 100644
--- a/rs_bindings_from_cc/test/golden/types_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/types_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/types.h"
diff --git a/rs_bindings_from_cc/test/golden/unions_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/unions_rs_api_impl.cc
index 58a8bbf..b11da7a 100644
--- a/rs_bindings_from_cc/test/golden/unions_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/unions_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/unions.h"
diff --git a/rs_bindings_from_cc/test/golden/unsupported_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/unsupported_rs_api_impl.cc
index 14fc167..8de19e8 100644
--- a/rs_bindings_from_cc/test/golden/unsupported_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/unsupported_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/unsupported.h"
diff --git a/rs_bindings_from_cc/test/golden/user_of_base_class_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/user_of_base_class_rs_api_impl.cc
index 0d7c8a1..902f739 100644
--- a/rs_bindings_from_cc/test/golden/user_of_base_class_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/user_of_base_class_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/user_of_base_class.h"
diff --git a/rs_bindings_from_cc/test/golden/user_of_imported_type_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/user_of_imported_type_rs_api_impl.cc
index 868fea8..2255542 100644
--- a/rs_bindings_from_cc/test/golden/user_of_imported_type_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/user_of_imported_type_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/user_of_imported_type.h"
diff --git a/rs_bindings_from_cc/test/golden/user_of_unsupported_rs_api_impl.cc b/rs_bindings_from_cc/test/golden/user_of_unsupported_rs_api_impl.cc
index 062534f..f11da7c 100644
--- a/rs_bindings_from_cc/test/golden/user_of_unsupported_rs_api_impl.cc
+++ b/rs_bindings_from_cc/test/golden/user_of_unsupported_rs_api_impl.cc
@@ -8,8 +8,8 @@
 #include <cstddef>
 #include <memory>
 
-#include "support/cxx20_backports.h"
-#include "support/offsetof.h"
+#include "support/internal/cxx20_backports.h"
+#include "support/internal/offsetof.h"
 
 // Public headers of the C++ library being wrapped.
 #include "rs_bindings_from_cc/test/golden/user_of_unsupported.h"
diff --git a/support/BUILD b/support/BUILD
index 2cf6a6c..a276aca 100644
--- a/support/BUILD
+++ b/support/BUILD
@@ -3,31 +3,6 @@
 
 licenses(["notice"])
 
-cc_library(
-    name = "rs_api_impl_support",
-    hdrs = [
-        "cxx20_backports.h",
-        "offsetof.h",
-    ],
-    visibility = ["//:__subpackages__"],
-    # It is important to be thoughtful when adding new dependencies for
-    # `rs_api_impl_support` (and possibly other targets in this BUILD file).
-    # Even simple dependencies like `absl` may be tricky in practice, because
-    # `rs_api_impl_support` may be developed and tested with one set of
-    # absl/base/options.h which may be different from absl/base/options.h
-    # adopted by users of Crubit.
-    deps = [],
-)
-
-cc_test(
-    name = "offsetof_test",
-    srcs = ["offsetof_test.cc"],
-    deps = [
-        ":rs_api_impl_support",
-        "@com_google_googletest//:gtest_main",
-    ],
-)
-
 rust_library(
     name = "ctor",
     srcs = ["ctor.rs"],
diff --git a/support/internal/BUILD b/support/internal/BUILD
new file mode 100644
index 0000000..3030310
--- /dev/null
+++ b/support/internal/BUILD
@@ -0,0 +1,24 @@
+cc_library(
+    name = "rs_api_impl_support",
+    hdrs = [
+        "cxx20_backports.h",
+        "offsetof.h",
+    ],
+    visibility = ["//:__subpackages__"],
+    # It is important to be thoughtful when adding new dependencies for
+    # `rs_api_impl_support` (and possibly other targets in this BUILD file).
+    # Even simple dependencies like `absl` may be tricky in practice, because
+    # `rs_api_impl_support` may be developed and tested with one set of
+    # absl/base/options.h which may be different from absl/base/options.h
+    # adopted by users of Crubit.
+    deps = [],
+)
+
+cc_test(
+    name = "offsetof_test",
+    srcs = ["offsetof_test.cc"],
+    deps = [
+        ":rs_api_impl_support",
+        "@com_google_googletest//:gtest_main",
+    ],
+)
diff --git a/support/internal/README.md b/support/internal/README.md
new file mode 100644
index 0000000..965e61a
--- /dev/null
+++ b/support/internal/README.md
@@ -0,0 +1,3 @@
+# Internal Crubit runtime support libraries
+
+These libraries are only for use by code generated by Crubit.
diff --git a/support/cxx20_backports.h b/support/internal/cxx20_backports.h
similarity index 100%
rename from support/cxx20_backports.h
rename to support/internal/cxx20_backports.h
diff --git a/support/offsetof.h b/support/internal/offsetof.h
similarity index 100%
rename from support/offsetof.h
rename to support/internal/offsetof.h
diff --git a/support/offsetof_test.cc b/support/internal/offsetof_test.cc
similarity index 94%
rename from support/offsetof_test.cc
rename to support/internal/offsetof_test.cc
index a0e03d9..c746025 100644
--- a/support/offsetof_test.cc
+++ b/support/internal/offsetof_test.cc
@@ -2,7 +2,7 @@
 // Exceptions. See /LICENSE for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 
-#include "support/offsetof.h"
+#include "support/internal/offsetof.h"
 
 #include <stdint.h>