diff --git a/util/BUILD.toplevel b/util/BUILD.toplevel
index 1ec2bdf..436afee 100644
--- a/util/BUILD.toplevel
+++ b/util/BUILD.toplevel
@@ -19,9 +19,13 @@
     "crypto_internal_headers",
     "crypto_sources",
     "crypto_sources_apple_aarch64",
+    "crypto_sources_apple_arm",
+    "crypto_sources_apple_x86",
     "crypto_sources_apple_x86_64",
     "crypto_sources_linux_aarch64",
+    "crypto_sources_linux_arm",
     "crypto_sources_linux_ppc64le",
+    "crypto_sources_linux_x86",
     "crypto_sources_linux_x86_64",
     "fips_fragments",
     "ssl_headers",
@@ -35,21 +39,31 @@
 
 exports_files(["LICENSE"])
 
-config_setting(
-    name = "linux_aarch64",
-    constraint_values = [
-        "@platforms//os:linux",
-        "@platforms//cpu:aarch64",
-    ],
-)
-
-config_setting(
-    name = "linux_x86_64",
-    constraint_values = [
-        "@platforms//os:linux",
-        "@platforms//cpu:x86_64",
-    ],
-)
+[
+    (
+        config_setting(
+            name = os + "_" + arch,
+            constraint_values = [
+                "@platforms//os:" + os,
+                "@platforms//cpu:" + arch,
+            ],
+        ),
+    )
+    for os in [
+        "linux",
+        "android",
+        "macos",
+        "ios",
+        "tvos",
+        "watchos",
+    ]
+    for arch in [
+        "arm64",
+        "armv7",
+        "x86_64",
+        "x86_32",
+    ]
+]
 
 config_setting(
     name = "linux_ppc64le",
@@ -59,22 +73,6 @@
     ],
 )
 
-config_setting(
-    name = "macos_aarch64",
-    constraint_values = [
-        "@platforms//os:macos",
-        "@platforms//cpu:aarch64",
-    ],
-)
-
-config_setting(
-    name = "macos_x86_64",
-    constraint_values = [
-        "@platforms//os:macos",
-        "@platforms//cpu:x86_64",
-    ],
-)
-
 posix_copts = [
     # Assembler option --noexecstack adds .note.GNU-stack to each object to
     # ensure that binaries can be built with non-executable stack.
@@ -91,35 +89,80 @@
     "-fno-common",
 ]
 
-linux_copts = posix_copts + [
-    # This is needed on Linux systems (at least) to get rwlock in pthread, but
-    # it should not be set on Apple platforms, where it instead disables APIs
-    # we use. See compat(5) and sys/cdefs.h.
+glibc_copts = posix_copts + [
+    # This is needed on glibc systems (at least) to get rwlock in pthread, but
+    # it should not be set on Apple platforms or FreeBSD, where it instead
+    # disables APIs we use.
+    # See compat(5), sys/cdefs.h, and https://crbug.com/boringssl/471
     "-D_XOPEN_SOURCE=700",
 ]
 
 boringssl_copts = select({
-    "@platforms//os:linux": linux_copts,
+    "@platforms//os:linux": glibc_copts,
+    "@platforms//os:android": posix_copts,
     "@platforms//os:macos": posix_copts,
+    "@platforms//os:ios": posix_copts,
+    "@platforms//os:tvos": posix_copts,
+    "@platforms//os:watchos": posix_copts,
     "@platforms//os:windows": ["-DWIN32_LEAN_AND_MEAN"],
     "//conditions:default": [],
 })
 
 # These selects must be kept in sync.
 crypto_sources_asm = select({
-    ":linux_aarch64": crypto_sources_linux_aarch64,
     ":linux_ppc64le": crypto_sources_linux_ppc64le,
+    ":linux_armv7": crypto_sources_linux_arm,
+    ":linux_arm64": crypto_sources_linux_aarch64,
+    ":linux_x86_32": crypto_sources_linux_x86,
     ":linux_x86_64": crypto_sources_linux_x86_64,
-    ":macos_aarch64": crypto_sources_apple_aarch64,
+    ":android_armv7": crypto_sources_linux_arm,
+    ":android_arm64": crypto_sources_linux_aarch64,
+    ":android_x86_32": crypto_sources_linux_x86,
+    ":android_x86_64": crypto_sources_linux_x86_64,
+    ":macos_armv7": crypto_sources_apple_arm,
+    ":macos_arm64": crypto_sources_apple_aarch64,
+    ":macos_x86_32": crypto_sources_apple_x86,
     ":macos_x86_64": crypto_sources_apple_x86_64,
+    ":ios_armv7": crypto_sources_apple_arm,
+    ":ios_arm64": crypto_sources_apple_aarch64,
+    ":ios_x86_32": crypto_sources_apple_x86,
+    ":ios_x86_64": crypto_sources_apple_x86_64,
+    ":tvos_armv7": crypto_sources_apple_arm,
+    ":tvos_arm64": crypto_sources_apple_aarch64,
+    ":tvos_x86_32": crypto_sources_apple_x86,
+    ":tvos_x86_64": crypto_sources_apple_x86_64,
+    ":watchos_armv7": crypto_sources_apple_arm,
+    ":watchos_arm64": crypto_sources_apple_aarch64,
+    ":watchos_x86_32": crypto_sources_apple_x86,
+    ":watchos_x86_64": crypto_sources_apple_x86_64,
     "//conditions:default": [],
 })
 boringssl_copts += select({
-    ":linux_aarch64": [],
     ":linux_ppc64le": [],
+    ":linux_armv7": [],
+    ":linux_arm64": [],
+    ":linux_x86_32": [],
     ":linux_x86_64": [],
-    ":macos_aarch64": [],
+    ":android_armv7": [],
+    ":android_arm64": [],
+    ":android_x86_32": [],
+    ":android_x86_64": [],
+    ":macos_armv7": [],
+    ":macos_arm64": [],
+    ":macos_x86_32": [],
     ":macos_x86_64": [],
+    ":ios_armv7": [],
+    ":ios_arm64": [],
+    ":ios_x86_32": [],
+    ":ios_x86_64": [],
+    ":tvos_armv7": [],
+    ":tvos_arm64": [],
+    ":tvos_x86_32": [],
+    ":tvos_x86_64": [],
+    ":watchos_armv7": [],
+    ":watchos_arm64": [],
+    ":watchos_x86_32": [],
+    ":watchos_x86_64": [],
     "//conditions:default": ["-DOPENSSL_NO_ASM"],
 })
 
@@ -133,7 +176,11 @@
 
 boringssl_copts_c11 = boringssl_copts + select({
     "@platforms//os:linux": posix_copts_c11,
+    "@platforms//os:android": posix_copts_c11,
     "@platforms//os:macos": posix_copts_c11,
+    "@platforms//os:ios": posix_copts_c11,
+    "@platforms//os:tvos": posix_copts_c11,
+    "@platforms//os:watchos": posix_copts_c11,
     "//conditions:default": [],
 })
 
@@ -145,7 +192,11 @@
 
 boringssl_copts_cxx = boringssl_copts + select({
     "@platforms//os:linux": posix_copts_cxx,
+    "@platforms//os:android": posix_copts_cxx,
     "@platforms//os:macos": posix_copts_cxx,
+    "@platforms//os:ios": posix_copts_cxx,
+    "@platforms//os:tvos": posix_copts_cxx,
+    "@platforms//os:watchos": posix_copts_cxx,
     "//conditions:default": [],
 })
 
@@ -160,6 +211,9 @@
         # to link against.
         "@platforms//os:android": [],
         "@platforms//os:macos": [],
+        "@platforms//os:ios": [],
+        "@platforms//os:tvos": [],
+        "@platforms//os:watchos": [],
         "@platforms//os:windows": ["-defaultlib:advapi32.lib"],
         "//conditions:default": ["-lpthread"],
     }),
