Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: update v8 to 12.7.224.18 #409

Open
wants to merge 25 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
644e5e2
Compile with C++20
mpwarres Aug 18, 2024
fdb5e93
Update googletest to v1.15.2
mpwarres Aug 18, 2024
aab1611
Patch proxy-wasm-cpp-sdk to work around g++ -std=c++20 compilation issue
mpwarres Aug 19, 2024
749ebf8
Add temporary workaround for #412
mpwarres Aug 19, 2024
fc7a80b
Add -fno-sanitize=unsigned-integer-overflow to clang asan options
mpwarres Aug 19, 2024
c2f8102
Disable clang-tidy clang-diagnostic-builtin-macro-redefined check
mpwarres Aug 19, 2024
d7d6af7
Change asan config for NullVM and Wasmtime from clang-asan-strict to …
mpwarres Aug 19, 2024
5092179
v8: update to 12.7.224.18
mpwarres Aug 15, 2024
ce012d6
Update v8.patch to revert v8 commit b26554ec368e9553782012c96aa5e99b1…
mpwarres Aug 16, 2024
4614adf
Bind absl_* build targets referenced by v8 build rules
mpwarres Aug 16, 2024
ef3558a
Fetch fp16 dependency of v8, and patch v8 to find it
mpwarres Aug 16, 2024
7a25b87
Set torque generator path to location where Bazel can find outputs
mpwarres Aug 16, 2024
a65d5e9
Tolerate deprecated declarations in v8
mpwarres Aug 16, 2024
bf4df28
Build with C++20, and take 2 at compiling v8 with -Wno-deprecated-dec…
mpwarres Aug 16, 2024
42d7ee7
Fix tweak to where v8 looks for its fp16 dependency
mpwarres Aug 16, 2024
93358c2
Additionally specify --host_cxxopt=-std=c++20
mpwarres Aug 19, 2024
c1161ce
Merge branch 'use-cpp-20' into v8_v12.7.224.18
mpwarres Aug 19, 2024
394f075
Specify -Wno-invalid-offsetof for gcc builds
mpwarres Aug 19, 2024
e5407f4
Cherrypick V8 commit 35888fee7bbaaaf1f02ccc88a95c9a336fc790bc to addr…
mpwarres Aug 19, 2024
c4500ac
Use --cxxopt instead of --copt to specify -Wno-invalid-offsetof
mpwarres Aug 19, 2024
8f34e8f
Add -Wno-deprecated to gcc cxxopt
mpwarres Aug 19, 2024
4de318c
Merge branch 'main' into use-cpp-20
mpwarres Aug 19, 2024
abc9b10
Merge branch 'use-cpp-20' into v8_v12.7.224.18
mpwarres Aug 19, 2024
d4eec14
Specify -Wno-deprecated for gcc, take 2
mpwarres Aug 19, 2024
06f6411
Set gcc warning flags via --host_cxxopt as well
mpwarres Aug 19, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Patch proxy-wasm-cpp-sdk to work around g++ -std=c++20 compilation issue
Signed-off-by: Michael Warres <mpw@google.com>
  • Loading branch information
mpwarres committed Aug 19, 2024
commit aab161168fc82282d124b00bafe6c6955f9ff08f
33 changes: 33 additions & 0 deletions bazel/external/proxy_wasm_cpp_sdk.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Address g++ -std=c++20 variadic template compilation issue:
# https://github.com/proxy-wasm/proxy-wasm-cpp-host/pull/411#issuecomment-2295429152

diff --git a/proxy_wasm_api.h b/proxy_wasm_api.h
index 166b49c..263d2b9 100644
--- a/proxy_wasm_api.h
+++ b/proxy_wasm_api.h
@@ -1207,7 +1207,7 @@ struct SimpleHistogram {
template <typename... Tags> struct Counter : public MetricBase {
static Counter<Tags...> *New(std::string_view name, MetricTagDescriptor<Tags>... fieldnames);

- Counter<Tags...>(std::string_view name, MetricTagDescriptor<Tags>... descriptors)
+ Counter(std::string_view name, MetricTagDescriptor<Tags>... descriptors)
: Counter<Tags...>(std::string(name), std::vector<MetricTag>({toMetricTag(descriptors)...})) {
}

@@ -1256,7 +1256,7 @@ inline Counter<Tags...> *Counter<Tags...>::New(std::string_view name,
template <typename... Tags> struct Gauge : public MetricBase {
static Gauge<Tags...> *New(std::string_view name, MetricTagDescriptor<Tags>... fieldnames);

- Gauge<Tags...>(std::string_view name, MetricTagDescriptor<Tags>... descriptors)
+ Gauge(std::string_view name, MetricTagDescriptor<Tags>... descriptors)
: Gauge<Tags...>(std::string(name), std::vector<MetricTag>({toMetricTag(descriptors)...})) {}

SimpleGauge resolve(Tags... f) {
@@ -1302,6 +1302,6 @@ inline Gauge<Tags...> *Gauge<Tags...>::New(std::string_view name,
template <typename... Tags> struct Histogram : public MetricBase {
static Histogram<Tags...> *New(std::string_view name, MetricTagDescriptor<Tags>... fieldnames);

- Histogram<Tags...>(std::string_view name, MetricTagDescriptor<Tags>... descriptors)
+ Histogram(std::string_view name, MetricTagDescriptor<Tags>... descriptors)
: Histogram<Tags...>(std::string(name),
std::vector<MetricTag>({toMetricTag(descriptors)...})) {}
2 changes: 2 additions & 0 deletions bazel/repositories.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,8 @@ def proxy_wasm_cpp_host_repositories():
sha256 = "89792fc1abca331f29f99870476a04146de5e82ff903bdffca90e6729c1f2470",
strip_prefix = "proxy-wasm-cpp-sdk-95bb82ce45c41d9100fd1ec15d2ffc67f7f3ceee",
urls = ["https://github.com/proxy-wasm/proxy-wasm-cpp-sdk/archive/95bb82ce45c41d9100fd1ec15d2ffc67f7f3ceee.tar.gz"],
patches = ["@proxy_wasm_cpp_host//bazel/external:proxy_wasm_cpp_sdk.patch"],
patch_args = ["-p1"],
)

# Test dependencies.
Expand Down
Loading