mirror of
https://github.com/openai/codex.git
synced 2026-04-24 14:45:27 +00:00
Working on all platforms
This commit is contained in:
93
MODULE.bazel
93
MODULE.bazel
@@ -133,21 +133,22 @@ crate.annotation(
|
||||
workspace_cargo_toml = "rust/runfiles/Cargo.toml",
|
||||
)
|
||||
|
||||
http_archive = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
||||
http_file = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "http_file")
|
||||
|
||||
crate.annotation(
|
||||
build_script_data = [
|
||||
"//codex-rs/v8-poc:rusty_v8_archive_for_target",
|
||||
"//codex-rs/v8-poc:rusty_v8_binding_for_target",
|
||||
"//third_party/v8:rusty_v8_archive_for_target",
|
||||
"//third_party/v8:rusty_v8_binding_for_target",
|
||||
],
|
||||
build_script_env = {
|
||||
"RUSTY_V8_ARCHIVE": "$(execpath //codex-rs/v8-poc:rusty_v8_archive_for_target)",
|
||||
"RUSTY_V8_SRC_BINDING_PATH": "$(execpath //codex-rs/v8-poc:rusty_v8_binding_for_target)",
|
||||
"RUSTY_V8_ARCHIVE": "$(execpath //third_party/v8:rusty_v8_archive_for_target)",
|
||||
"RUSTY_V8_SRC_BINDING_PATH": "$(execpath //third_party/v8:rusty_v8_binding_for_target)",
|
||||
},
|
||||
crate = "v8",
|
||||
gen_build_script = "on",
|
||||
)
|
||||
|
||||
http_archive = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
||||
|
||||
llvm = use_extension("@llvm//extensions:llvm.bzl", "llvm")
|
||||
use_repo(llvm, "llvm-project")
|
||||
|
||||
@@ -213,6 +214,86 @@ http_archive(
|
||||
urls = ["https://static.crates.io/crates/v8/v8-146.4.0.crate"],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_aarch64_apple_darwin_archive",
|
||||
downloaded_file_path = "librusty_v8_release_aarch64-apple-darwin.a.gz",
|
||||
urls = [
|
||||
"https://github.com/denoland/rusty_v8/releases/download/v146.4.0/librusty_v8_release_aarch64-apple-darwin.a.gz",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_aarch64_unknown_linux_gnu_archive",
|
||||
downloaded_file_path = "librusty_v8_release_aarch64-unknown-linux-gnu.a.gz",
|
||||
urls = [
|
||||
"https://github.com/denoland/rusty_v8/releases/download/v146.4.0/librusty_v8_release_aarch64-unknown-linux-gnu.a.gz",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_aarch64_pc_windows_msvc_archive",
|
||||
downloaded_file_path = "rusty_v8_release_aarch64-pc-windows-msvc.lib.gz",
|
||||
urls = [
|
||||
"https://github.com/denoland/rusty_v8/releases/download/v146.4.0/rusty_v8_release_aarch64-pc-windows-msvc.lib.gz",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_x86_64_apple_darwin_archive",
|
||||
downloaded_file_path = "librusty_v8_release_x86_64-apple-darwin.a.gz",
|
||||
urls = [
|
||||
"https://github.com/denoland/rusty_v8/releases/download/v146.4.0/librusty_v8_release_x86_64-apple-darwin.a.gz",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_x86_64_unknown_linux_gnu_archive",
|
||||
downloaded_file_path = "librusty_v8_release_x86_64-unknown-linux-gnu.a.gz",
|
||||
urls = [
|
||||
"https://github.com/denoland/rusty_v8/releases/download/v146.4.0/librusty_v8_release_x86_64-unknown-linux-gnu.a.gz",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_x86_64_pc_windows_msvc_archive",
|
||||
downloaded_file_path = "rusty_v8_release_x86_64-pc-windows-msvc.lib.gz",
|
||||
urls = [
|
||||
"https://github.com/denoland/rusty_v8/releases/download/v146.4.0/rusty_v8_release_x86_64-pc-windows-msvc.lib.gz",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_aarch64_unknown_linux_musl_archive",
|
||||
downloaded_file_path = "librusty_v8_release_aarch64-unknown-linux-musl.a.gz",
|
||||
urls = [
|
||||
"https://github.com/openai/codex/releases/download/rusty-v8-v146.4.0/librusty_v8_release_aarch64-unknown-linux-musl.a.gz",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_aarch64_unknown_linux_musl_binding",
|
||||
downloaded_file_path = "src_binding_release_aarch64-unknown-linux-musl.rs",
|
||||
urls = [
|
||||
"https://github.com/openai/codex/releases/download/rusty-v8-v146.4.0/src_binding_release_aarch64-unknown-linux-musl.rs",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_x86_64_unknown_linux_musl_archive",
|
||||
downloaded_file_path = "librusty_v8_release_x86_64-unknown-linux-musl.a.gz",
|
||||
urls = [
|
||||
"https://github.com/openai/codex/releases/download/rusty-v8-v146.4.0/librusty_v8_release_x86_64-unknown-linux-musl.a.gz",
|
||||
],
|
||||
)
|
||||
|
||||
http_file(
|
||||
name = "rusty_v8_146_4_0_x86_64_unknown_linux_musl_binding",
|
||||
downloaded_file_path = "src_binding_release_x86_64-unknown-linux-musl.rs",
|
||||
urls = [
|
||||
"https://github.com/openai/codex/releases/download/rusty-v8-v146.4.0/src_binding_release_x86_64-unknown-linux-musl.rs",
|
||||
],
|
||||
)
|
||||
|
||||
use_repo(crate, "crates")
|
||||
|
||||
bazel_dep(name = "libcap", version = "2.27.bcr.1")
|
||||
|
||||
@@ -1,41 +1,5 @@
|
||||
load("//:defs.bzl", "codex_rust_crate")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
alias(
|
||||
name = "rusty_v8_archive_for_target",
|
||||
actual = select({
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-apple-darwin": "//third_party/v8:v8_146_4_0_aarch64_apple_darwin",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-pc-windows-gnullvm": "//third_party/v8:v8_146_4_0_aarch64_pc_windows_gnullvm",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-pc-windows-msvc": "//third_party/v8:v8_146_4_0_aarch64_pc_windows_msvc",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-unknown-linux-gnu": "//third_party/v8:v8_146_4_0_aarch64_unknown_linux_gnu",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-unknown-linux-musl": "//third_party/v8:v8_146_4_0_aarch64_unknown_linux_musl",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-apple-darwin": "//third_party/v8:v8_146_4_0_x86_64_apple_darwin",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-pc-windows-gnullvm": "//third_party/v8:v8_146_4_0_x86_64_pc_windows_gnullvm",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-pc-windows-msvc": "//third_party/v8:v8_146_4_0_x86_64_pc_windows_msvc",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-unknown-linux-gnu": "//third_party/v8:v8_146_4_0_x86_64_unknown_linux_gnu",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-unknown-linux-musl": "//third_party/v8:v8_146_4_0_x86_64_unknown_linux_musl",
|
||||
"//conditions:default": "//third_party/v8:v8_146_4_0_x86_64_unknown_linux_gnu",
|
||||
}),
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "rusty_v8_binding_for_target",
|
||||
actual = select({
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-apple-darwin": "//third_party/v8:src_binding_release_aarch64_apple_darwin",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-pc-windows-gnullvm": "//third_party/v8:src_binding_release_aarch64_pc_windows_gnullvm",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-pc-windows-msvc": "//third_party/v8:src_binding_release_aarch64_pc_windows_msvc",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-unknown-linux-gnu": "//third_party/v8:src_binding_release_aarch64_unknown_linux_gnu",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-unknown-linux-musl": "//third_party/v8:src_binding_release_aarch64_unknown_linux_musl",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-apple-darwin": "//third_party/v8:src_binding_release_x86_64_apple_darwin",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-pc-windows-gnullvm": "//third_party/v8:src_binding_release_x86_64_pc_windows_gnullvm",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-pc-windows-msvc": "//third_party/v8:src_binding_release_x86_64_pc_windows_msvc",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-unknown-linux-gnu": "//third_party/v8:src_binding_release_x86_64_unknown_linux_gnu",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-unknown-linux-musl": "//third_party/v8:src_binding_release_x86_64_unknown_linux_musl",
|
||||
"//conditions:default": "//third_party/v8:src_binding_release_x86_64_unknown_linux_gnu",
|
||||
}),
|
||||
)
|
||||
|
||||
codex_rust_crate(
|
||||
name = "v8-poc",
|
||||
crate_name = "codex_v8_poc",
|
||||
|
||||
260
third_party/v8/BUILD.bazel
vendored
260
third_party/v8/BUILD.bazel
vendored
@@ -4,6 +4,158 @@ load("@rules_cc//cc:defs.bzl", "cc_library")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
config_setting(
|
||||
name = "platform_aarch64_unknown_linux_musl",
|
||||
constraint_values = [
|
||||
"@platforms//cpu:aarch64",
|
||||
"@platforms//os:linux",
|
||||
"@llvm//constraints/libc:musl",
|
||||
],
|
||||
)
|
||||
|
||||
config_setting(
|
||||
name = "platform_x86_64_unknown_linux_musl",
|
||||
constraint_values = [
|
||||
"@platforms//cpu:x86_64",
|
||||
"@platforms//os:linux",
|
||||
"@llvm//constraints/libc:musl",
|
||||
],
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_x86_64_apple_darwin",
|
||||
actual = "@rusty_v8_146_4_0_x86_64_apple_darwin_archive//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_aarch64_apple_darwin",
|
||||
actual = "@rusty_v8_146_4_0_aarch64_apple_darwin_archive//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_x86_64_unknown_linux_gnu",
|
||||
actual = "@rusty_v8_146_4_0_x86_64_unknown_linux_gnu_archive//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_aarch64_unknown_linux_gnu",
|
||||
actual = "@rusty_v8_146_4_0_aarch64_unknown_linux_gnu_archive//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_x86_64_unknown_linux_musl",
|
||||
actual = "@rusty_v8_146_4_0_x86_64_unknown_linux_musl_archive//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_aarch64_unknown_linux_musl",
|
||||
actual = "@rusty_v8_146_4_0_aarch64_unknown_linux_musl_archive//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_x86_64_pc_windows_msvc",
|
||||
actual = "@rusty_v8_146_4_0_x86_64_pc_windows_msvc_archive//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_aarch64_pc_windows_msvc",
|
||||
actual = "@rusty_v8_146_4_0_aarch64_pc_windows_msvc_archive//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_aarch64_pc_windows_gnullvm",
|
||||
actual = ":v8_146_4_0_aarch64_pc_windows_msvc",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_x86_64_pc_windows_gnullvm",
|
||||
actual = ":v8_146_4_0_x86_64_pc_windows_msvc",
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_x86_64_apple_darwin",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_x86_64_apple_darwin"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_aarch64_apple_darwin",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_aarch64_apple_darwin"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_aarch64_unknown_linux_gnu",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_aarch64_unknown_linux_gnu"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_x86_64_unknown_linux_gnu",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_x86_64_unknown_linux_gnu"],
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "src_binding_release_x86_64_unknown_linux_musl",
|
||||
actual = "@rusty_v8_146_4_0_x86_64_unknown_linux_musl_binding//file",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "src_binding_release_aarch64_unknown_linux_musl",
|
||||
actual = "@rusty_v8_146_4_0_aarch64_unknown_linux_musl_binding//file",
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_x86_64_pc_windows_msvc",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_x86_64_pc_windows_msvc"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_aarch64_pc_windows_msvc",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_aarch64_pc_windows_msvc"],
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "src_binding_release_x86_64_pc_windows_gnullvm",
|
||||
actual = ":src_binding_release_x86_64_pc_windows_msvc",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "src_binding_release_aarch64_pc_windows_gnullvm",
|
||||
actual = ":src_binding_release_aarch64_pc_windows_msvc",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "rusty_v8_archive_for_target",
|
||||
actual = select({
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-apple-darwin": ":v8_146_4_0_aarch64_apple_darwin",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-pc-windows-gnullvm": ":v8_146_4_0_aarch64_pc_windows_gnullvm",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-pc-windows-msvc": ":v8_146_4_0_aarch64_pc_windows_msvc",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-unknown-linux-gnu": ":v8_146_4_0_aarch64_unknown_linux_gnu",
|
||||
":platform_aarch64_unknown_linux_musl": ":v8_146_4_0_aarch64_unknown_linux_musl",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-apple-darwin": ":v8_146_4_0_x86_64_apple_darwin",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-pc-windows-gnullvm": ":v8_146_4_0_x86_64_pc_windows_gnullvm",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-pc-windows-msvc": ":v8_146_4_0_x86_64_pc_windows_msvc",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-unknown-linux-gnu": ":v8_146_4_0_x86_64_unknown_linux_gnu",
|
||||
":platform_x86_64_unknown_linux_musl": ":v8_146_4_0_x86_64_unknown_linux_musl",
|
||||
"//conditions:default": ":v8_146_4_0_x86_64_unknown_linux_gnu",
|
||||
}),
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "rusty_v8_binding_for_target",
|
||||
actual = select({
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-apple-darwin": ":src_binding_release_aarch64_apple_darwin",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-pc-windows-gnullvm": ":src_binding_release_aarch64_pc_windows_gnullvm",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-pc-windows-msvc": ":src_binding_release_aarch64_pc_windows_msvc",
|
||||
"@rules_rs//rs/experimental/platforms/config:aarch64-unknown-linux-gnu": ":src_binding_release_aarch64_unknown_linux_gnu",
|
||||
":platform_aarch64_unknown_linux_musl": ":src_binding_release_aarch64_unknown_linux_musl",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-apple-darwin": ":src_binding_release_x86_64_apple_darwin",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-pc-windows-gnullvm": ":src_binding_release_x86_64_pc_windows_gnullvm",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-pc-windows-msvc": ":src_binding_release_x86_64_pc_windows_msvc",
|
||||
"@rules_rs//rs/experimental/platforms/config:x86_64-unknown-linux-gnu": ":src_binding_release_x86_64_unknown_linux_gnu",
|
||||
":platform_x86_64_unknown_linux_musl": ":src_binding_release_x86_64_unknown_linux_musl",
|
||||
"//conditions:default": ":src_binding_release_x86_64_unknown_linux_gnu",
|
||||
}),
|
||||
)
|
||||
|
||||
V8_COPTS = ["-std=c++20"]
|
||||
|
||||
V8_STATIC_LIBRARY_FEATURES = [
|
||||
@@ -45,39 +197,15 @@ cc_library(
|
||||
)
|
||||
|
||||
cc_static_library(
|
||||
name = "v8_146_4_0_x86_64_apple_darwin",
|
||||
deps = [":v8_146_4_0_binding"],
|
||||
features = V8_STATIC_LIBRARY_FEATURES,
|
||||
)
|
||||
|
||||
cc_static_library(
|
||||
name = "v8_146_4_0_aarch64_apple_darwin",
|
||||
deps = [":v8_146_4_0_binding"],
|
||||
features = V8_STATIC_LIBRARY_FEATURES,
|
||||
)
|
||||
|
||||
cc_static_library(
|
||||
name = "v8_146_4_0_aarch64_unknown_linux_gnu",
|
||||
deps = [":v8_146_4_0_binding"],
|
||||
features = V8_STATIC_LIBRARY_FEATURES,
|
||||
)
|
||||
|
||||
cc_static_library(
|
||||
name = "v8_146_4_0_x86_64_unknown_linux_gnu",
|
||||
deps = [":v8_146_4_0_binding"],
|
||||
features = V8_STATIC_LIBRARY_FEATURES,
|
||||
)
|
||||
|
||||
cc_static_library(
|
||||
name = "v8_146_4_0_aarch64_unknown_linux_musl_base",
|
||||
name = "v8_146_4_0_aarch64_unknown_linux_musl_release_base",
|
||||
deps = [":v8_146_4_0_binding"],
|
||||
features = V8_STATIC_LIBRARY_FEATURES,
|
||||
)
|
||||
|
||||
genrule(
|
||||
name = "v8_146_4_0_aarch64_unknown_linux_musl",
|
||||
name = "v8_146_4_0_aarch64_unknown_linux_musl_release",
|
||||
srcs = [
|
||||
":v8_146_4_0_aarch64_unknown_linux_musl_base",
|
||||
":v8_146_4_0_aarch64_unknown_linux_musl_release_base",
|
||||
"@llvm//runtimes/compiler-rt:clang_rt.builtins.static",
|
||||
],
|
||||
tools = [
|
||||
@@ -88,7 +216,7 @@ genrule(
|
||||
cmd = """
|
||||
cat > "$(@D)/merge.mri" <<'EOF'
|
||||
create $@
|
||||
addlib $(location :v8_146_4_0_aarch64_unknown_linux_musl_base)
|
||||
addlib $(location :v8_146_4_0_aarch64_unknown_linux_musl_release_base)
|
||||
addlib $(location @llvm//runtimes/compiler-rt:clang_rt.builtins.static)
|
||||
save
|
||||
end
|
||||
@@ -99,83 +227,21 @@ EOF
|
||||
)
|
||||
|
||||
cc_static_library(
|
||||
name = "v8_146_4_0_x86_64_unknown_linux_musl",
|
||||
name = "v8_146_4_0_x86_64_unknown_linux_musl_release",
|
||||
deps = [":v8_146_4_0_binding"],
|
||||
features = V8_STATIC_LIBRARY_FEATURES,
|
||||
)
|
||||
|
||||
cc_static_library(
|
||||
name = "v8_146_4_0_aarch64_pc_windows_msvc",
|
||||
deps = [":v8_146_4_0_binding"],
|
||||
features = V8_STATIC_LIBRARY_FEATURES,
|
||||
)
|
||||
|
||||
cc_static_library(
|
||||
name = "v8_146_4_0_x86_64_pc_windows_msvc",
|
||||
deps = [":v8_146_4_0_binding"],
|
||||
features = V8_STATIC_LIBRARY_FEATURES,
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_aarch64_pc_windows_gnullvm",
|
||||
actual = ":v8_146_4_0_aarch64_pc_windows_msvc",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "v8_146_4_0_x86_64_pc_windows_gnullvm",
|
||||
actual = ":v8_146_4_0_x86_64_pc_windows_msvc",
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_x86_64_apple_darwin",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_x86_64_apple_darwin"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_aarch64_apple_darwin",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_aarch64_apple_darwin"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_aarch64_unknown_linux_gnu",
|
||||
name = "src_binding_release_aarch64_unknown_linux_musl_release",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_aarch64_unknown_linux_gnu"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_x86_64_unknown_linux_gnu",
|
||||
name = "src_binding_release_x86_64_unknown_linux_musl_release",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_x86_64_unknown_linux_gnu"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_aarch64_unknown_linux_musl",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_aarch64_unknown_linux_gnu"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_x86_64_unknown_linux_musl",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_x86_64_unknown_linux_gnu"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_x86_64_pc_windows_msvc",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_x86_64_pc_windows_msvc"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "src_binding_release_aarch64_pc_windows_msvc",
|
||||
srcs = ["@v8_crate_146_4_0//:src_binding_release_aarch64_pc_windows_msvc"],
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "src_binding_release_x86_64_pc_windows_gnullvm",
|
||||
actual = ":src_binding_release_x86_64_pc_windows_msvc",
|
||||
)
|
||||
|
||||
alias(
|
||||
name = "src_binding_release_aarch64_pc_windows_gnullvm",
|
||||
actual = ":src_binding_release_aarch64_pc_windows_msvc",
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "rusty_v8_release_pair_x86_64_apple_darwin",
|
||||
srcs = [
|
||||
@@ -211,16 +277,16 @@ filegroup(
|
||||
filegroup(
|
||||
name = "rusty_v8_release_pair_x86_64_unknown_linux_musl",
|
||||
srcs = [
|
||||
":v8_146_4_0_x86_64_unknown_linux_musl",
|
||||
":src_binding_release_x86_64_unknown_linux_musl",
|
||||
":v8_146_4_0_x86_64_unknown_linux_musl_release",
|
||||
":src_binding_release_x86_64_unknown_linux_musl_release",
|
||||
],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "rusty_v8_release_pair_aarch64_unknown_linux_musl",
|
||||
srcs = [
|
||||
":v8_146_4_0_aarch64_unknown_linux_musl",
|
||||
":src_binding_release_aarch64_unknown_linux_musl",
|
||||
":v8_146_4_0_aarch64_unknown_linux_musl_release",
|
||||
":src_binding_release_aarch64_unknown_linux_musl_release",
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
59
third_party/v8/README.md
vendored
59
third_party/v8/README.md
vendored
@@ -1,45 +1,36 @@
|
||||
# `rusty_v8` Release Artifacts
|
||||
# `rusty_v8` Consumer Artifacts
|
||||
|
||||
This directory contains the Bazel packaging used to build and stage
|
||||
target-specific `rusty_v8` release artifacts for Bazel-managed consumers.
|
||||
This directory wires the `v8` crate to exact-version prebuilt artifacts.
|
||||
Consumer builds use:
|
||||
|
||||
- upstream `denoland/rusty_v8` release archives on Darwin, GNU Linux, and Windows
|
||||
- `openai/codex` release assets for `x86_64-unknown-linux-musl` and
|
||||
`aarch64-unknown-linux-musl`
|
||||
|
||||
Current pinned versions:
|
||||
|
||||
- Rust crate: `v8 = =146.4.0`
|
||||
- Embedded upstream V8 source: `14.6.202.9`
|
||||
- Embedded upstream V8 source for musl release builds: `14.6.202.9`
|
||||
|
||||
The generated release pairs include:
|
||||
The consumer-facing selectors are:
|
||||
|
||||
- `//third_party/v8:rusty_v8_archive_for_target`
|
||||
- `//third_party/v8:rusty_v8_binding_for_target`
|
||||
|
||||
Musl release assets are expected at the tag:
|
||||
|
||||
- `rusty-v8-v<crate_version>`
|
||||
|
||||
with these raw asset names:
|
||||
|
||||
- `librusty_v8_release_<target>.a.gz`
|
||||
- `src_binding_release_<target>.rs`
|
||||
|
||||
The dedicated publishing workflow is `.github/workflows/rusty-v8-release.yml`.
|
||||
It only builds musl release pairs from source:
|
||||
|
||||
- `//third_party/v8:rusty_v8_release_pair_x86_64_apple_darwin`
|
||||
- `//third_party/v8:rusty_v8_release_pair_aarch64_apple_darwin`
|
||||
- `//third_party/v8:rusty_v8_release_pair_x86_64_unknown_linux_gnu`
|
||||
- `//third_party/v8:rusty_v8_release_pair_aarch64_unknown_linux_gnu`
|
||||
- `//third_party/v8:rusty_v8_release_pair_x86_64_unknown_linux_musl`
|
||||
- `//third_party/v8:rusty_v8_release_pair_aarch64_unknown_linux_musl`
|
||||
- `//third_party/v8:rusty_v8_release_pair_x86_64_pc_windows_msvc`
|
||||
- `//third_party/v8:rusty_v8_release_pair_aarch64_pc_windows_msvc`
|
||||
|
||||
Each release pair contains:
|
||||
|
||||
- a static library built from source
|
||||
- a Rust binding file copied from the exact same `v8` crate version for that
|
||||
target
|
||||
|
||||
Do not mix artifacts across crate versions. The archive and binding must match
|
||||
the exact pinned `v8` crate version used by this repo.
|
||||
|
||||
The dedicated publishing workflow is:
|
||||
|
||||
- `.github/workflows/rusty-v8-release.yml`
|
||||
|
||||
That workflow currently stages musl artifacts:
|
||||
|
||||
- `librusty_v8_release_x86_64-unknown-linux-musl.a.gz`
|
||||
- `librusty_v8_release_aarch64-unknown-linux-musl.a.gz`
|
||||
- `src_binding_release_x86_64-unknown-linux-musl.rs`
|
||||
- `src_binding_release_aarch64-unknown-linux-musl.rs`
|
||||
|
||||
During musl staging, the produced static archive is merged with the target's
|
||||
LLVM `libc++` and `libc++abi` static runtime archives. Rust's musl toolchain
|
||||
already provides the matching `libunwind`, so staging does not bundle a second
|
||||
copy.
|
||||
the exact resolved `v8` crate version in `codex-rs/Cargo.lock`.
|
||||
|
||||
Reference in New Issue
Block a user