mirror of
https://github.com/openai/codex.git
synced 2026-10-23 18:08:45 +00:00
## Why V8's Abseil and protobuf's shared Abseil can be built for different C++ runtimes. Give V8's copy a distinct inline namespace so both can link into one binary without interposing incompatible functions. ## What changed - Move pinned V8 dependency imports and BUILD overlays into `third_party/v8`, and inject those repositories into V8 through a module-extension bridge with no fallback downloads. - Build V8's Abseil with a V8-specific inline namespace while preserving protobuf's shared Abseil namespace. - Apply V8's C++ runtime settings in the Abseil, Highway, and simdutf overlays, and remove the shared `rules_cc` patch. - Document source dependency ownership and the version, checksum, and overlay review procedure for V8 upgrades. GitOrigin-RevId: 2b8e3deed285559f8dd3324647cb4b81089f2f56
29 lines
946 B
Plaintext
29 lines
946 B
Plaintext
# Codex overlay for upstream simdutf source, not copied from V8's BUILD.
|
|
# V8 builds Chromium's single-header vendored form; match its Version field
|
|
# and review vendor changes on each upgrade (README.md#updating-source-dependencies).
|
|
load("@@//third_party/v8:dependency_config.bzl", "RUSTY_V8_DEPENDENCY_COPTS", "RUSTY_V8_DEPENDENCY_DEPS")
|
|
load("@rules_cc//cc:defs.bzl", "cc_library")
|
|
|
|
cc_library(
|
|
name = "simdutf",
|
|
srcs = ["src/simdutf.cpp"],
|
|
hdrs = glob(["include/**/*.h"]),
|
|
copts = ["-std=c++20"] + RUSTY_V8_DEPENDENCY_COPTS,
|
|
features = ["-module_maps"],
|
|
include_prefix = "third_party/simdutf",
|
|
includes = [
|
|
"include",
|
|
"src",
|
|
],
|
|
strip_include_prefix = "include",
|
|
textual_hdrs = glob(
|
|
[
|
|
"src/**/*.h",
|
|
"src/**/*.cpp",
|
|
],
|
|
exclude = ["src/simdutf.cpp"],
|
|
),
|
|
visibility = ["//visibility:public"],
|
|
deps = RUSTY_V8_DEPENDENCY_DEPS,
|
|
)
|