[bazel] Bump rules_rs and llvm (#13366)

# External (non-OpenAI) Pull Request Requirements

Before opening this Pull Request, please read the dedicated
"Contributing" markdown file or your PR may be closed:
https://github.com/openai/codex/blob/main/docs/contributing.md

If your PR conforms to our contribution guidelines, replace this text
with a detailed and high quality description of your changes.

Include a link to a bug report or enhancement request.
This commit is contained in:
zbarsky-openai
2026-03-03 20:59:32 -05:00
committed by GitHub
parent 639a5f6c48
commit 2d8c1575b8
10 changed files with 57 additions and 126 deletions

View File

@@ -18,7 +18,7 @@ common --enable_platform_specific_config
common:linux --host_platform=//:local_linux common:linux --host_platform=//:local_linux
common:windows --host_platform=//:local_windows common:windows --host_platform=//:local_windows
common --@rules_cc//cc/toolchains/args/archiver_flags:use_libtool_on_macos=False common --@rules_cc//cc/toolchains/args/archiver_flags:use_libtool_on_macos=False
common --@toolchains_llvm_bootstrapped//config:experimental_stub_libgcc_s common --@llvm//config:experimental_stub_libgcc_s
# We need to use the sh toolchain on windows so we don't send host bash paths to the linux executor. # We need to use the sh toolchain on windows so we don't send host bash paths to the linux executor.
common:windows --@rules_rust//rust/settings:experimental_use_sh_toolchain_for_bootstrap_process_wrapper common:windows --@rules_rust//rust/settings:experimental_use_sh_toolchain_for_bootstrap_process_wrapper

View File

@@ -1,11 +1,4 @@
load("@apple_support//xcode:xcode_config.bzl", "xcode_config") load("@apple_support//xcode:xcode_config.bzl", "xcode_config")
load("@rules_cc//cc:defs.bzl", "cc_shared_library")
cc_shared_library(
name = "clang",
deps = ["@llvm-project//clang:libclang"],
visibility = ["//visibility:public"],
)
xcode_config(name = "disable_xcode") xcode_config(name = "disable_xcode")
@@ -16,7 +9,7 @@ platform(
name = "local_linux", name = "local_linux",
constraint_values = [ constraint_values = [
# We mark the local platform as glibc-compatible because musl-built rust cannot dlopen proc macros. # We mark the local platform as glibc-compatible because musl-built rust cannot dlopen proc macros.
"@toolchains_llvm_bootstrapped//constraints/libc:gnu.2.28", "@llvm//constraints/libc:gnu.2.28",
], ],
parents = ["@platforms//host"], parents = ["@platforms//host"],
) )

View File

@@ -1,18 +1,18 @@
module(name = "codex") module(name = "codex")
bazel_dep(name = "platforms", version = "1.0.0") bazel_dep(name = "platforms", version = "1.0.0")
bazel_dep(name = "toolchains_llvm_bootstrapped", version = "0.5.6") bazel_dep(name = "llvm", version = "0.6.1")
single_version_override( single_version_override(
module_name = "toolchains_llvm_bootstrapped", module_name = "llvm",
patch_strip = 1, patch_strip = 1,
patches = [ patches = [
"//patches:toolchains_llvm_bootstrapped_resource_dir.patch", "//patches:toolchains_llvm_bootstrapped_resource_dir.patch",
], ],
) )
register_toolchains("@toolchains_llvm_bootstrapped//toolchain:all") register_toolchains("@llvm//toolchain:all")
osx = use_extension("@toolchains_llvm_bootstrapped//extensions:osx.bzl", "osx") osx = use_extension("@llvm//extensions:osx.bzl", "osx")
osx.framework(name = "ApplicationServices") osx.framework(name = "ApplicationServices")
osx.framework(name = "AppKit") osx.framework(name = "AppKit")
osx.framework(name = "ColorSync") osx.framework(name = "ColorSync")
@@ -33,21 +33,13 @@ osx.framework(name = "Kernel")
osx.framework(name = "OSLog") osx.framework(name = "OSLog")
osx.framework(name = "Security") osx.framework(name = "Security")
osx.framework(name = "SystemConfiguration") osx.framework(name = "SystemConfiguration")
use_repo(osx, "macosx15.4.sdk") use_repo(osx, "macos_sdk")
# Needed to disable xcode... # Needed to disable xcode...
bazel_dep(name = "apple_support", version = "2.1.0") bazel_dep(name = "apple_support", version = "2.1.0")
bazel_dep(name = "rules_cc", version = "0.2.16") bazel_dep(name = "rules_cc", version = "0.2.16")
bazel_dep(name = "rules_platform", version = "0.1.0") bazel_dep(name = "rules_platform", version = "0.1.0")
bazel_dep(name = "rules_rs", version = "0.0.23") bazel_dep(name = "rules_rs", version = "0.0.40")
# Special toolchains branch
archive_override(
module_name = "rules_rs",
integrity = "sha256-O34UF4H7b1Qacu3vlu2Od4ILGVApzg5j1zl952SFL3w=",
strip_prefix = "rules_rs-097123c2aa72672e371e69e7035869f5a45c7b2b",
url = "https://github.com/dzbarsky/rules_rs/archive/097123c2aa72672e371e69e7035869f5a45c7b2b.tar.gz",
)
rules_rust = use_extension("@rules_rs//rs/experimental:rules_rust.bzl", "rules_rust") rules_rust = use_extension("@rules_rs//rs/experimental:rules_rust.bzl", "rules_rust")
use_repo(rules_rust, "rules_rust") use_repo(rules_rust, "rules_rust")
@@ -57,13 +49,9 @@ toolchains.toolchain(
edition = "2024", edition = "2024",
version = "1.93.0", version = "1.93.0",
) )
use_repo( use_repo(toolchains, "default_rust_toolchains")
toolchains,
"experimental_rust_toolchains_1_93_0",
"rust_toolchain_artifacts_macos_aarch64_1_93_0",
)
register_toolchains("@experimental_rust_toolchains_1_93_0//:all") register_toolchains("@default_rust_toolchains//:all")
crate = use_extension("@rules_rs//rs:extensions.bzl", "crate") crate = use_extension("@rules_rs//rs:extensions.bzl", "crate")
crate.from_cargo( crate.from_cargo(
@@ -79,6 +67,7 @@ crate.from_cargo(
"x86_64-apple-darwin", "x86_64-apple-darwin",
"x86_64-pc-windows-gnullvm", "x86_64-pc-windows-gnullvm",
], ],
use_experimental_platforms = True,
) )
bazel_dep(name = "zstd", version = "1.5.7") bazel_dep(name = "zstd", version = "1.5.7")
@@ -139,11 +128,9 @@ crate.annotation(
"OPENSSL_NO_VENDOR": "1", "OPENSSL_NO_VENDOR": "1",
"OPENSSL_STATIC": "1", "OPENSSL_STATIC": "1",
}, },
crate_features = [
"dep:openssl-src",
],
crate = "openssl-sys", crate = "openssl-sys",
data = ["@openssl//:gen_dir"], data = ["@openssl//:gen_dir"],
gen_build_script = "on",
) )
inject_repo(crate, "openssl") inject_repo(crate, "openssl")
@@ -153,27 +140,28 @@ crate.annotation(
workspace_cargo_toml = "rust/runfiles/Cargo.toml", workspace_cargo_toml = "rust/runfiles/Cargo.toml",
) )
llvm = use_extension("@toolchains_llvm_bootstrapped//extensions:llvm.bzl", "llvm") llvm = use_extension("@llvm//extensions:llvm.bzl", "llvm")
use_repo(llvm, "llvm-project") use_repo(llvm, "llvm-project")
crate.annotation( crate.annotation(
# Provide the hermetic SDK path so the build script doesn't try to invoke an unhermetic `xcrun --show-sdk-path`. # Provide the hermetic SDK path so the build script doesn't try to invoke an unhermetic `xcrun --show-sdk-path`.
build_script_data = [ build_script_data = [
"@macosx15.4.sdk//sysroot", "@macos_sdk//sysroot",
], ],
build_script_env = { build_script_env = {
"BINDGEN_EXTRA_CLANG_ARGS": "-isystem $(location @toolchains_llvm_bootstrapped//:builtin_headers)", "BINDGEN_EXTRA_CLANG_ARGS": "-isystem $(location @llvm//:builtin_headers)",
"COREAUDIO_SDK_PATH": "$(location @macosx15.4.sdk//sysroot)", "COREAUDIO_SDK_PATH": "$(location @macos_sdk//sysroot)",
"LIBCLANG_PATH": "$(location @codex//:clang)", "LIBCLANG_PATH": "$(location @llvm-project//clang:libclang_interface_output)",
}, },
build_script_tools = [ build_script_tools = [
"@codex//:clang", "@llvm-project//clang:libclang_interface_output",
"@toolchains_llvm_bootstrapped//:builtin_headers", "@llvm//:builtin_headers",
], ],
crate = "coreaudio-sys", crate = "coreaudio-sys",
gen_build_script = "on",
) )
inject_repo(crate, "codex", "toolchains_llvm_bootstrapped", "macosx15.4.sdk") inject_repo(crate, "llvm", "llvm-project", "macos_sdk")
# Fix readme inclusions # Fix readme inclusions
crate.annotation( crate.annotation(
@@ -184,28 +172,6 @@ crate.annotation(
], ],
) )
WINDOWS_IMPORT_LIB = """
load("@rules_cc//cc:defs.bzl", "cc_import")
cc_import(
name = "windows_import_lib",
static_library = glob(["lib/*.a"])[0],
)
"""
crate.annotation(
additive_build_file_content = WINDOWS_IMPORT_LIB,
crate = "windows_x86_64_gnullvm",
gen_build_script = "off",
deps = [":windows_import_lib"],
)
crate.annotation(
additive_build_file_content = WINDOWS_IMPORT_LIB,
crate = "windows_aarch64_gnullvm",
gen_build_script = "off",
deps = [":windows_import_lib"],
)
bazel_dep(name = "alsa_lib", version = "1.2.9.bcr.4") bazel_dep(name = "alsa_lib", version = "1.2.9.bcr.4")
crate.annotation( crate.annotation(

27
MODULE.bazel.lock generated
View File

@@ -44,10 +44,12 @@
"https://bcr.bazel.build/modules/bazel_features/1.28.0/MODULE.bazel": "4b4200e6cbf8fa335b2c3f43e1d6ef3e240319c33d43d60cc0fbd4b87ece299d", "https://bcr.bazel.build/modules/bazel_features/1.28.0/MODULE.bazel": "4b4200e6cbf8fa335b2c3f43e1d6ef3e240319c33d43d60cc0fbd4b87ece299d",
"https://bcr.bazel.build/modules/bazel_features/1.3.0/MODULE.bazel": "cdcafe83ec318cda34e02948e81d790aab8df7a929cec6f6969f13a489ccecd9", "https://bcr.bazel.build/modules/bazel_features/1.3.0/MODULE.bazel": "cdcafe83ec318cda34e02948e81d790aab8df7a929cec6f6969f13a489ccecd9",
"https://bcr.bazel.build/modules/bazel_features/1.30.0/MODULE.bazel": "a14b62d05969a293b80257e72e597c2da7f717e1e69fa8b339703ed6731bec87", "https://bcr.bazel.build/modules/bazel_features/1.30.0/MODULE.bazel": "a14b62d05969a293b80257e72e597c2da7f717e1e69fa8b339703ed6731bec87",
"https://bcr.bazel.build/modules/bazel_features/1.32.0/MODULE.bazel": "095d67022a58cb20f7e20e1aefecfa65257a222c18a938e2914fd257b5f1ccdc",
"https://bcr.bazel.build/modules/bazel_features/1.33.0/MODULE.bazel": "8b8dc9d2a4c88609409c3191165bccec0e4cb044cd7a72ccbe826583303459f6", "https://bcr.bazel.build/modules/bazel_features/1.33.0/MODULE.bazel": "8b8dc9d2a4c88609409c3191165bccec0e4cb044cd7a72ccbe826583303459f6",
"https://bcr.bazel.build/modules/bazel_features/1.34.0/MODULE.bazel": "e8475ad7c8965542e0c7aac8af68eb48c4af904be3d614b6aa6274c092c2ea1e", "https://bcr.bazel.build/modules/bazel_features/1.34.0/MODULE.bazel": "e8475ad7c8965542e0c7aac8af68eb48c4af904be3d614b6aa6274c092c2ea1e",
"https://bcr.bazel.build/modules/bazel_features/1.34.0/source.json": "dfa5c4b01110313153b484a735764d247fee5624bbab63d25289e43b151a657a",
"https://bcr.bazel.build/modules/bazel_features/1.4.1/MODULE.bazel": "e45b6bb2350aff3e442ae1111c555e27eac1d915e77775f6fdc4b351b758b5d7", "https://bcr.bazel.build/modules/bazel_features/1.4.1/MODULE.bazel": "e45b6bb2350aff3e442ae1111c555e27eac1d915e77775f6fdc4b351b758b5d7",
"https://bcr.bazel.build/modules/bazel_features/1.42.0/MODULE.bazel": "e8ca15cb2639c5f12183db6dcb678735555d0cdd739b32a0418b6532b5e565f8",
"https://bcr.bazel.build/modules/bazel_features/1.42.0/source.json": "f2ea90e5dd0322481147114c7d5e4608c4b3fae2eeccae655e4d76a382389f6f",
"https://bcr.bazel.build/modules/bazel_features/1.9.0/MODULE.bazel": "885151d58d90d8d9c811eb75e3288c11f850e1d6b481a8c9f766adee4712358b", "https://bcr.bazel.build/modules/bazel_features/1.9.0/MODULE.bazel": "885151d58d90d8d9c811eb75e3288c11f850e1d6b481a8c9f766adee4712358b",
"https://bcr.bazel.build/modules/bazel_features/1.9.1/MODULE.bazel": "8f679097876a9b609ad1f60249c49d68bfab783dd9be012faf9d82547b14815a", "https://bcr.bazel.build/modules/bazel_features/1.9.1/MODULE.bazel": "8f679097876a9b609ad1f60249c49d68bfab783dd9be012faf9d82547b14815a",
"https://bcr.bazel.build/modules/bazel_lib/3.0.0/MODULE.bazel": "22b70b80ac89ad3f3772526cd9feee2fa412c2b01933fea7ed13238a448d370d", "https://bcr.bazel.build/modules/bazel_lib/3.0.0/MODULE.bazel": "22b70b80ac89ad3f3772526cd9feee2fa412c2b01933fea7ed13238a448d370d",
@@ -88,6 +90,9 @@
"https://bcr.bazel.build/modules/libcap/2.27.bcr.1/MODULE.bazel": "7c034d7a4d92b2293294934377f5d1cbc88119710a11079fa8142120f6f08768", "https://bcr.bazel.build/modules/libcap/2.27.bcr.1/MODULE.bazel": "7c034d7a4d92b2293294934377f5d1cbc88119710a11079fa8142120f6f08768",
"https://bcr.bazel.build/modules/libcap/2.27.bcr.1/source.json": "3b116cbdbd25a68ffb587b672205f6d353a4c19a35452e480d58fc89531e0a10", "https://bcr.bazel.build/modules/libcap/2.27.bcr.1/source.json": "3b116cbdbd25a68ffb587b672205f6d353a4c19a35452e480d58fc89531e0a10",
"https://bcr.bazel.build/modules/libpfm/4.11.0/MODULE.bazel": "45061ff025b301940f1e30d2c16bea596c25b176c8b6b3087e92615adbd52902", "https://bcr.bazel.build/modules/libpfm/4.11.0/MODULE.bazel": "45061ff025b301940f1e30d2c16bea596c25b176c8b6b3087e92615adbd52902",
"https://bcr.bazel.build/modules/llvm/0.6.0/MODULE.bazel": "42c2182c49f13d2df83a4a4a95ab55d31efda47b2d67acf419bf6b31522b2a30",
"https://bcr.bazel.build/modules/llvm/0.6.1/MODULE.bazel": "29170ab19f4e2dc9b6bbf9b3d101738e84142f63ba29a13cc33e0d40f74c79b0",
"https://bcr.bazel.build/modules/llvm/0.6.1/source.json": "2d8cdd3a5f8e1d16132dbbe97250133101e4863c0376d23273d9afd7363cc331",
"https://bcr.bazel.build/modules/nlohmann_json/3.6.1/MODULE.bazel": "6f7b417dcc794d9add9e556673ad25cb3ba835224290f4f848f8e2db1e1fca74", "https://bcr.bazel.build/modules/nlohmann_json/3.6.1/MODULE.bazel": "6f7b417dcc794d9add9e556673ad25cb3ba835224290f4f848f8e2db1e1fca74",
"https://bcr.bazel.build/modules/nlohmann_json/3.6.1/source.json": "f448c6e8963fdfa7eb831457df83ad63d3d6355018f6574fb017e8169deb43a9", "https://bcr.bazel.build/modules/nlohmann_json/3.6.1/source.json": "f448c6e8963fdfa7eb831457df83ad63d3d6355018f6574fb017e8169deb43a9",
"https://bcr.bazel.build/modules/openssl/3.5.4.bcr.0/MODULE.bazel": "0f6b8f20b192b9ff0781406256150bcd46f19e66d807dcb0c540548439d6fc35", "https://bcr.bazel.build/modules/openssl/3.5.4.bcr.0/MODULE.bazel": "0f6b8f20b192b9ff0781406256150bcd46f19e66d807dcb0c540548439d6fc35",
@@ -199,6 +204,8 @@
"https://bcr.bazel.build/modules/rules_python/1.6.0/MODULE.bazel": "7e04ad8f8d5bea40451cf80b1bd8262552aa73f841415d20db96b7241bd027d8", "https://bcr.bazel.build/modules/rules_python/1.6.0/MODULE.bazel": "7e04ad8f8d5bea40451cf80b1bd8262552aa73f841415d20db96b7241bd027d8",
"https://bcr.bazel.build/modules/rules_python/1.7.0/MODULE.bazel": "d01f995ecd137abf30238ad9ce97f8fc3ac57289c8b24bd0bf53324d937a14f8", "https://bcr.bazel.build/modules/rules_python/1.7.0/MODULE.bazel": "d01f995ecd137abf30238ad9ce97f8fc3ac57289c8b24bd0bf53324d937a14f8",
"https://bcr.bazel.build/modules/rules_python/1.7.0/source.json": "028a084b65dcf8f4dc4f82f8778dbe65df133f234b316828a82e060d81bdce32", "https://bcr.bazel.build/modules/rules_python/1.7.0/source.json": "028a084b65dcf8f4dc4f82f8778dbe65df133f234b316828a82e060d81bdce32",
"https://bcr.bazel.build/modules/rules_rs/0.0.40/MODULE.bazel": "63238bcb69010753dbd37b5ed08cb79d3af2d88a40b0fda0b110f60f307e86d4",
"https://bcr.bazel.build/modules/rules_rs/0.0.40/source.json": "ae3b17d2f9e4fbcd3de543318e71f83d8522c8527f385bf2b2a7665ec504827e",
"https://bcr.bazel.build/modules/rules_shell/0.2.0/MODULE.bazel": "fda8a652ab3c7d8fee214de05e7a9916d8b28082234e8d2c0094505c5268ed3c", "https://bcr.bazel.build/modules/rules_shell/0.2.0/MODULE.bazel": "fda8a652ab3c7d8fee214de05e7a9916d8b28082234e8d2c0094505c5268ed3c",
"https://bcr.bazel.build/modules/rules_shell/0.3.0/MODULE.bazel": "de4402cd12f4cc8fda2354fce179fdb068c0b9ca1ec2d2b17b3e21b24c1a937b", "https://bcr.bazel.build/modules/rules_shell/0.3.0/MODULE.bazel": "de4402cd12f4cc8fda2354fce179fdb068c0b9ca1ec2d2b17b3e21b24c1a937b",
"https://bcr.bazel.build/modules/rules_shell/0.4.1/MODULE.bazel": "00e501db01bbf4e3e1dd1595959092c2fadf2087b2852d3f553b5370f5633592", "https://bcr.bazel.build/modules/rules_shell/0.4.1/MODULE.bazel": "00e501db01bbf4e3e1dd1595959092c2fadf2087b2852d3f553b5370f5633592",
@@ -223,9 +230,6 @@
"https://bcr.bazel.build/modules/tar.bzl/0.2.1/MODULE.bazel": "52d1c00a80a8cc67acbd01649e83d8dd6a9dc426a6c0b754a04fe8c219c76468", "https://bcr.bazel.build/modules/tar.bzl/0.2.1/MODULE.bazel": "52d1c00a80a8cc67acbd01649e83d8dd6a9dc426a6c0b754a04fe8c219c76468",
"https://bcr.bazel.build/modules/tar.bzl/0.6.0/MODULE.bazel": "a3584b4edcfafcabd9b0ef9819808f05b372957bbdff41601429d5fd0aac2e7c", "https://bcr.bazel.build/modules/tar.bzl/0.6.0/MODULE.bazel": "a3584b4edcfafcabd9b0ef9819808f05b372957bbdff41601429d5fd0aac2e7c",
"https://bcr.bazel.build/modules/tar.bzl/0.6.0/source.json": "4a620381df075a16cb3a7ed57bd1d05f7480222394c64a20fa51bdb636fda658", "https://bcr.bazel.build/modules/tar.bzl/0.6.0/source.json": "4a620381df075a16cb3a7ed57bd1d05f7480222394c64a20fa51bdb636fda658",
"https://bcr.bazel.build/modules/toolchains_llvm_bootstrapped/0.5.2/MODULE.bazel": "f7c822cea99caef928d7cbe695498096e53c4b2c0ea45997e9a64bf6b77b43b0",
"https://bcr.bazel.build/modules/toolchains_llvm_bootstrapped/0.5.6/MODULE.bazel": "7298112608aefec21ea8bfbe325b14472222a0243c3dabcd0287eba418791f35",
"https://bcr.bazel.build/modules/toolchains_llvm_bootstrapped/0.5.6/source.json": "c2a30627cfe15e4deeba63a75d1894324444ae0276eb17ac0161ba5c220c1cb2",
"https://bcr.bazel.build/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "7298990c00040a0e2f121f6c32544bab27d4452f80d9ce51349b1a28f3005c43", "https://bcr.bazel.build/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "7298990c00040a0e2f121f6c32544bab27d4452f80d9ce51349b1a28f3005c43",
"https://bcr.bazel.build/modules/with_cfg.bzl/0.12.0/MODULE.bazel": "b573395fe63aef4299ba095173e2f62ccfee5ad9bbf7acaa95dba73af9fc2b38", "https://bcr.bazel.build/modules/with_cfg.bzl/0.12.0/MODULE.bazel": "b573395fe63aef4299ba095173e2f62ccfee5ad9bbf7acaa95dba73af9fc2b38",
"https://bcr.bazel.build/modules/with_cfg.bzl/0.12.0/source.json": "3f3fbaeafecaf629877ad152a2c9def21f8d330d91aa94c5dc75bbb98c10b8b8", "https://bcr.bazel.build/modules/with_cfg.bzl/0.12.0/source.json": "3f3fbaeafecaf629877ad152a2c9def21f8d330d91aa94c5dc75bbb98c10b8b8",
@@ -244,7 +248,7 @@
"@@aspect_tools_telemetry+//:extension.bzl%telemetry": { "@@aspect_tools_telemetry+//:extension.bzl%telemetry": {
"general": { "general": {
"bzlTransitiveDigest": "dnnhvKMf9MIXMulhbhHBblZdDAfAkiSVjApIXpUz9Y8=", "bzlTransitiveDigest": "dnnhvKMf9MIXMulhbhHBblZdDAfAkiSVjApIXpUz9Y8=",
"usagesDigest": "RFeOiu3n5PGxbV4G+nHCOyM04AaEegaq6ajL+2iZ3Bo=", "usagesDigest": "2ScE07TNSr/xo2GnYHCRI4JX4hiql6iZaNKUIUshUv4=",
"recordedInputs": [ "recordedInputs": [
"REPO_MAPPING:aspect_tools_telemetry+,bazel_lib bazel_lib+", "REPO_MAPPING:aspect_tools_telemetry+,bazel_lib bazel_lib+",
"REPO_MAPPING:aspect_tools_telemetry+,bazel_skylib bazel_skylib+" "REPO_MAPPING:aspect_tools_telemetry+,bazel_skylib bazel_skylib+"
@@ -255,17 +259,20 @@
"attributes": { "attributes": {
"deps": { "deps": {
"abseil-cpp": "20250814.1", "abseil-cpp": "20250814.1",
"apple_support": "1.24.2", "alsa_lib": "1.2.9.bcr.4",
"apple_support": "2.1.0",
"aspect_bazel_lib": "2.19.3", "aspect_bazel_lib": "2.19.3",
"aspect_tools_telemetry": "0.3.2", "aspect_tools_telemetry": "0.3.2",
"bazel_features": "1.34.0", "bazel_features": "1.34.0",
"bazel_lib": "3.0.0", "bazel_lib": "3.2.0",
"bazel_skylib": "1.8.2", "bazel_skylib": "1.8.2",
"buildozer": "8.2.1", "buildozer": "8.2.1",
"bzip2": "1.0.8.bcr.3",
"gawk": "5.3.2.bcr.1", "gawk": "5.3.2.bcr.1",
"googletest": "1.17.0", "googletest": "1.17.0",
"jq.bzl": "0.1.0", "jq.bzl": "0.1.0",
"jsoncpp": "1.9.6", "jsoncpp": "1.9.6",
"libcap": "2.27.bcr.1",
"nlohmann_json": "3.6.1", "nlohmann_json": "3.6.1",
"openssl": "3.5.4.bcr.0", "openssl": "3.5.4.bcr.0",
"package_metadata": "0.0.5", "package_metadata": "0.0.5",
@@ -285,15 +292,17 @@
"rules_platform": "0.1.0", "rules_platform": "0.1.0",
"rules_proto": "7.1.0", "rules_proto": "7.1.0",
"rules_python": "1.7.0", "rules_python": "1.7.0",
"rules_rs": "0.0.23",
"rules_shell": "0.6.1", "rules_shell": "0.6.1",
"rules_swift": "3.1.2", "rules_swift": "3.1.2",
"sed": "4.9.bcr.3",
"stardoc": "0.7.2", "stardoc": "0.7.2",
"swift_argument_parser": "1.3.1.2", "swift_argument_parser": "1.3.1.2",
"tar.bzl": "0.6.0", "tar.bzl": "0.6.0",
"toolchains_llvm_bootstrapped": "0.5.6",
"with_cfg.bzl": "0.12.0", "with_cfg.bzl": "0.12.0",
"yq.bzl": "0.1.1", "yq.bzl": "0.1.1",
"zlib": "1.3.1.bcr.5" "zlib": "1.3.1.bcr.8",
"zstd": "1.5.7"
} }
} }
} }

View File

@@ -3,6 +3,5 @@ load("//:defs.bzl", "codex_rust_crate")
codex_rust_crate( codex_rust_crate(
name = "app-server", name = "app-server",
crate_name = "codex_app_server", crate_name = "codex_app_server",
integration_deps_extra = ["//codex-rs/app-server/tests/common:common"],
test_tags = ["no-sandbox"], test_tags = ["no-sandbox"],
) )

View File

@@ -46,7 +46,6 @@ codex_rust_crate(
# succeeds without this workaround. # succeeds without this workaround.
"//:AGENTS.md", "//:AGENTS.md",
], ],
integration_deps_extra = ["//codex-rs/core/tests/common:common"],
test_tags = ["no-sandbox"], test_tags = ["no-sandbox"],
extra_binaries = [ extra_binaries = [
"//codex-rs/linux-sandbox:codex-linux-sandbox", "//codex-rs/linux-sandbox:codex-linux-sandbox",

View File

@@ -3,5 +3,4 @@ load("//:defs.bzl", "codex_rust_crate")
codex_rust_crate( codex_rust_crate(
name = "mcp-server", name = "mcp-server",
crate_name = "codex_mcp_server", crate_name = "codex_mcp_server",
integration_deps_extra = ["//codex-rs/mcp-server/tests/common:common"],
) )

View File

@@ -17,7 +17,7 @@ def multiplatform_binaries(name, platforms = PLATFORMS):
for platform in platforms: for platform in platforms:
platform_data( platform_data(
name = name + "_" + platform, name = name + "_" + platform,
platform = "@toolchains_llvm_bootstrapped//platforms:" + platform, platform = "@llvm//platforms:" + platform,
target = name, target = name,
tags = ["manual"], tags = ["manual"],
) )
@@ -42,7 +42,6 @@ def codex_rust_crate(
rustc_flags_extra = [], rustc_flags_extra = [],
rustc_env = {}, rustc_env = {},
deps_extra = [], deps_extra = [],
integration_deps_extra = [],
integration_compile_data_extra = [], integration_compile_data_extra = [],
test_data_extra = [], test_data_extra = [],
test_tags = [], test_tags = [],
@@ -73,7 +72,6 @@ def codex_rust_crate(
rustc_env: Extra rustc_env entries to merge with defaults. rustc_env: Extra rustc_env entries to merge with defaults.
deps_extra: Extra normal deps beyond @crates resolution. deps_extra: Extra normal deps beyond @crates resolution.
Typically only needed when features add additional deps. Typically only needed when features add additional deps.
integration_deps_extra: Extra deps for integration tests only.
integration_compile_data_extra: Extra compile_data for integration tests. integration_compile_data_extra: Extra compile_data for integration tests.
test_data_extra: Extra runtime data for tests. test_data_extra: Extra runtime data for tests.
test_tags: Tags applied to unit + integration test targets. test_tags: Tags applied to unit + integration test targets.
@@ -81,11 +79,6 @@ def codex_rust_crate(
extra_binaries: Additional binary labels to surface as test data and extra_binaries: Additional binary labels to surface as test data and
`CARGO_BIN_EXE_*` environment variables. These are only needed for binaries from a different crate. `CARGO_BIN_EXE_*` environment variables. These are only needed for binaries from a different crate.
""" """
deps = all_crate_deps(normal = True) + deps_extra
dev_deps = all_crate_deps(normal_dev = True)
proc_macro_deps = all_crate_deps(proc_macro = True)
proc_macro_dev_deps = all_crate_deps(proc_macro_dev = True)
test_env = { test_env = {
"INSTA_WORKSPACE_ROOT": ".", "INSTA_WORKSPACE_ROOT": ".",
"INSTA_SNAPSHOT_PATH": "src", "INSTA_SNAPSHOT_PATH": "src",
@@ -99,18 +92,19 @@ def codex_rust_crate(
lib_srcs = crate_srcs or native.glob(["src/**/*.rs"], exclude = binaries.values(), allow_empty = True) lib_srcs = crate_srcs or native.glob(["src/**/*.rs"], exclude = binaries.values(), allow_empty = True)
maybe_deps = []
if build_script_enabled and native.glob(["build.rs"], allow_empty = True): if build_script_enabled and native.glob(["build.rs"], allow_empty = True):
cargo_build_script( cargo_build_script(
name = name + "-build-script", name = name + "-build-script",
srcs = ["build.rs"], srcs = ["build.rs"],
deps = all_crate_deps(build = True), deps = all_crate_deps(build = True),
proc_macro_deps = all_crate_deps(build_proc_macro = True),
data = build_script_data, data = build_script_data,
# Some build script deps sniff version-related env vars... # Some build script deps sniff version-related env vars...
version = "0.0.0", version = "0.0.0",
) )
deps = deps + [name + "-build-script"] maybe_deps += [name + "-build-script"]
if lib_srcs: if lib_srcs:
lib_rule = rust_proc_macro if proc_macro else rust_library lib_rule = rust_proc_macro if proc_macro else rust_library
@@ -118,8 +112,7 @@ def codex_rust_crate(
name = name, name = name,
crate_name = crate_name, crate_name = crate_name,
crate_features = crate_features, crate_features = crate_features,
deps = deps, deps = all_crate_deps() + maybe_deps + deps_extra,
proc_macro_deps = proc_macro_deps,
compile_data = compile_data, compile_data = compile_data,
data = lib_data_extra, data = lib_data_extra,
srcs = lib_srcs, srcs = lib_srcs,
@@ -133,18 +126,14 @@ def codex_rust_crate(
name = name + "-unit-tests", name = name + "-unit-tests",
crate = name, crate = name,
env = test_env, env = test_env,
deps = deps + dev_deps, deps = all_crate_deps(normal = True, normal_dev = True) + maybe_deps + deps_extra,
proc_macro_deps = proc_macro_deps + proc_macro_dev_deps,
rustc_flags = rustc_flags_extra, rustc_flags = rustc_flags_extra,
rustc_env = rustc_env, rustc_env = rustc_env,
data = test_data_extra, data = test_data_extra,
tags = test_tags, tags = test_tags,
) )
if proc_macro: maybe_deps += [name]
proc_macro_deps += [name]
else:
deps += [name]
sanitized_binaries = [] sanitized_binaries = []
cargo_env = {} cargo_env = {}
@@ -157,8 +146,7 @@ def codex_rust_crate(
name = binary, name = binary,
crate_name = binary.replace("-", "_"), crate_name = binary.replace("-", "_"),
crate_root = main, crate_root = main,
deps = deps, deps = all_crate_deps() + maybe_deps + deps_extra,
proc_macro_deps = proc_macro_deps,
edition = crate_edition, edition = crate_edition,
rustc_flags = rustc_flags_extra, rustc_flags = rustc_flags_extra,
srcs = native.glob(["src/**/*.rs"]), srcs = native.glob(["src/**/*.rs"]),
@@ -184,8 +172,7 @@ def codex_rust_crate(
srcs = [test], srcs = [test],
data = native.glob(["tests/**"], allow_empty = True) + sanitized_binaries + test_data_extra, data = native.glob(["tests/**"], allow_empty = True) + sanitized_binaries + test_data_extra,
compile_data = native.glob(["tests/**"], allow_empty = True) + integration_compile_data_extra, compile_data = native.glob(["tests/**"], allow_empty = True) + integration_compile_data_extra,
deps = deps + dev_deps + integration_deps_extra, deps = all_crate_deps(normal = True, normal_dev = True) + maybe_deps + deps_extra,
proc_macro_deps = proc_macro_deps + proc_macro_dev_deps,
# Keep `file!()` paths Cargo-like (`core/tests/...`) instead of # Keep `file!()` paths Cargo-like (`core/tests/...`) instead of
# Bazel workspace-prefixed (`codex-rs/core/tests/...`) for snapshot parity. # Bazel workspace-prefixed (`codex-rs/core/tests/...`) for snapshot parity.
rustc_flags = rustc_flags_extra + ["--remap-path-prefix=codex-rs="], rustc_flags = rustc_flags_extra + ["--remap-path-prefix=codex-rs="],

View File

@@ -1,5 +1,5 @@
diff --git a/toolchain/args/BUILD.bazel b/toolchain/args/BUILD.bazel diff --git a/toolchain/args/BUILD.bazel b/toolchain/args/BUILD.bazel
index e6dc56c..b323589 100644 index 7da0ddb..78326d9 100644
--- a/toolchain/args/BUILD.bazel --- a/toolchain/args/BUILD.bazel
+++ b/toolchain/args/BUILD.bazel +++ b/toolchain/args/BUILD.bazel
@@ -17,8 +17,8 @@ package(default_visibility = ["//visibility:public"]) @@ -17,8 +17,8 @@ package(default_visibility = ["//visibility:public"])
@@ -12,29 +12,10 @@ index e6dc56c..b323589 100644
], ],
args = [ args = [
"-resource-dir", "-resource-dir",
@@ -32,6 +32,46 @@ cc_args( @@ -32,6 +32,25 @@ cc_args(
], },
) )
+alias(
+ name = "clang_builtin_headers_include_search_directory",
+ actual = select({
+ "@toolchains_llvm_bootstrapped//platforms/config:linux_x86_64": "@llvm-toolchain-minimal-21.1.8-linux-amd64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:linux_aarch64": "@llvm-toolchain-minimal-21.1.8-linux-arm64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:linux_x86_64_gnu": "@llvm-toolchain-minimal-21.1.8-linux-amd64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:linux_aarch64_gnu": "@llvm-toolchain-minimal-21.1.8-linux-arm64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:linux_x86_64_musl": "@llvm-toolchain-minimal-21.1.8-linux-amd64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:linux_aarch64_musl": "@llvm-toolchain-minimal-21.1.8-linux-arm64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:macos_x86_64": "@llvm-toolchain-minimal-21.1.8-darwin-arm64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:macos_aarch64": "@llvm-toolchain-minimal-21.1.8-darwin-arm64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:windows_x86_64": "@llvm-toolchain-minimal-21.1.8-windows-amd64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:windows_aarch64": "@llvm-toolchain-minimal-21.1.8-windows-arm64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:none_wasm32": "@llvm-toolchain-minimal-21.1.8-linux-amd64//:builtin_headers",
+ "@toolchains_llvm_bootstrapped//platforms/config:none_wasm64": "@llvm-toolchain-minimal-21.1.8-linux-amd64//:builtin_headers",
+ }),
+ visibility = ["//toolchain:__subpackages__"],
+)
+
+cc_args( +cc_args(
+ name = "clang_builtin_headers_include_search_paths", + name = "clang_builtin_headers_include_search_paths",
+ actions = [ + actions = [
@@ -46,24 +27,22 @@ index e6dc56c..b323589 100644
+ "{clang_builtin_headers_include_search_path}", + "{clang_builtin_headers_include_search_path}",
+ ], + ],
+ format = { + format = {
+ "clang_builtin_headers_include_search_path": ":clang_builtin_headers_include_search_directory", + "clang_builtin_headers_include_search_path": "//:builtin_headers",
+ }, + },
+ data = [ + data = [
+ ":clang_builtin_headers_include_search_directory", + "//:builtin_headers",
+ ],
+ allowlist_include_directories = [
+ ":clang_builtin_headers_include_search_directory",
+ ], + ],
+ allowlist_include_directories = ["//:builtin_headers"],
+) +)
+ +
cc_args( cc_args(
name = "llvm_target_for_platform", name = "llvm_target_for_platform",
actions = [ actions = [
diff --git a/toolchain/BUILD.bazel b/toolchain/BUILD.bazel diff --git a/toolchain/BUILD.bazel b/toolchain/BUILD.bazel
index 6ffc9f7..e02089a 100644 index 1f89467..8f20f10 100644
--- a/toolchain/BUILD.bazel --- a/toolchain/BUILD.bazel
+++ b/toolchain/BUILD.bazel +++ b/toolchain/BUILD.bazel
@@ -100,6 +100,7 @@ cc_args_list( @@ -107,6 +107,7 @@ cc_args_list(
"@platforms//os:macos": [], "@platforms//os:macos": [],
"//conditions:default": [ "//conditions:default": [
"//toolchain/args:resource_dir", "//toolchain/args:resource_dir",

View File

@@ -18,7 +18,7 @@ platform(
"@platforms//cpu:{cpu}", "@platforms//cpu:{cpu}",
"@platforms//os:linux", "@platforms//os:linux",
"@bazel_tools//tools/cpp:clang", "@bazel_tools//tools/cpp:clang",
"@toolchains_llvm_bootstrapped//constraints/libc:gnu.2.28", "@llvm//constraints/libc:gnu.2.28",
], ],
exec_properties = {{ exec_properties = {{
# Ubuntu-based image that includes git, python3, dotslash, and other # Ubuntu-based image that includes git, python3, dotslash, and other