diff --git a/bazel/external/v8.patch b/bazel/external/v8.patch index 0f227f32a..b115a0433 100644 --- a/bazel/external/v8.patch +++ b/bazel/external/v8.patch @@ -1,1078 +1,15 @@ -1. Use bazel/config from within the main repository. (https://crrev.com/c/3331591) -2. Manage dependencies in Bazel. (https://crrev.com/c/3344621) -3. Generate inspector files using @rules_python. (https://crrev.com/c/3343881) -7. Fix v8_torque when imported in another workspace. (https://crrev.com/c/3346680) -4. Fix build with GCC and older versions of Clang. (https://crrev.com/c/3333635) -5. Fix build on arm64. (https://crrev.com/c/3337367) -6. Fix build on macOS. (https://crrev.com/c/3364916) -7. Add support for building on s390x. (https://crrev.com/c/3346395) -8. Expose :v8 and :wee8 libraries with headers. (https://crrev.com/c/3346681) +# Set v8_enable_handle_zapping=False to regain performance. -diff --git a/.bazelrc b/.bazelrc -index e0127628ca..ef69dda4a5 100644 ---- a/.bazelrc -+++ b/.bazelrc -@@ -2,12 +2,16 @@ - # Use of this source code is governed by a BSD-style license that can be - # found in the LICENSE file. - --# V8 bazel port only supports clang --build --action_env=BAZEL_COMPILER=clang --build --action_env=CC=clang --build --action_env=CXX=clang++ -+# Pass CC, CXX and PATH from the environment -+build --action_env=CC -+build --action_env=CXX - build --action_env=PATH - -+# Use Clang compiler -+build:clang --action_env=BAZEL_COMPILER=clang -+build:clang --action_env=CC=clang -+build:clang --action_env=CXX=clang++ -+ - # V8 debug config - build:debug --compilation_mode=dbg - build:debug --config=v8_enable_debugging_features diff --git a/BUILD.bazel b/BUILD.bazel -index c9864429a5..b1717e8fda 100644 +index 7d09243ee9..b9dec574e9 100644 --- a/BUILD.bazel +++ b/BUILD.bazel -@@ -3,6 +3,8 @@ - # found in the LICENSE file. - - load("@bazel_skylib//lib:selects.bzl", "selects") -+load("@rules_python//python:defs.bzl", "py_binary") -+load("@v8_python_deps//:requirements.bzl", "requirement") - load( - "@v8//:bazel/defs.bzl", - "v8_binary", -@@ -18,13 +20,6 @@ load( - ) - load(":bazel/v8-non-pointer-compression.bzl", "v8_binary_non_pointer_compression") - --config_setting( -- name = "is_debug", -- values = { -- "compilation_mode": "dbg", -- }, --) -- - # ================================================= - # Flags - # ================================================= -@@ -198,7 +193,7 @@ selects.config_setting_group( - name = "v8_target_x64_default_pointer_compression", - match_all = [ - ":v8_enable_pointer_compression_is_none", -- "@config//:v8_target_x64", -+ "@v8//bazel/config:v8_target_x64", - ], - ) - -@@ -207,7 +202,7 @@ selects.config_setting_group( - name = "v8_target_arm64_default_pointer_compression", - match_all = [ - ":v8_enable_pointer_compression_is_none", -- "@config//:v8_target_arm64", -+ "@v8//bazel/config:v8_target_arm64", - ], - ) - -@@ -252,7 +247,7 @@ selects.config_setting_group( - selects.config_setting_group( - name = "should_add_rdynamic", - match_all = [ -- "@config//:is_linux", -+ "@v8//bazel/config:is_linux", - ":is_v8_enable_backtrace", - ], - ) -@@ -290,37 +285,41 @@ v8_config( - "V8_ADVANCED_BIGINT_ALGORITHMS", - "V8_CONCURRENT_MARKING", - ] + select({ -- ":is_debug": [ -+ "@v8//bazel/config:is_debug": [ - "DEBUG", - "V8_ENABLE_CHECKS", - ], - "//conditions:default": [], - }) + select( - { -- "@config//:v8_target_ia32": ["V8_TARGET_ARCH_IA32"], -- "@config//:v8_target_x64": ["V8_TARGET_ARCH_X64"], -- "@config//:v8_target_arm": [ -+ "@v8//bazel/config:v8_target_ia32": ["V8_TARGET_ARCH_IA32"], -+ "@v8//bazel/config:v8_target_x64": ["V8_TARGET_ARCH_X64"], -+ "@v8//bazel/config:v8_target_arm": [ - "V8_TARGET_ARCH_ARM", - "CAN_USE_ARMV7_INSTRUCTIONS", - "CAN_USE_VFP3_INSTRUCTIONS", - ], -- "@config//:v8_target_arm64": ["V8_TARGET_ARCH_ARM64"], -+ "@v8//bazel/config:v8_target_arm64": ["V8_TARGET_ARCH_ARM64"], -+ "@v8//bazel/config:v8_target_s390x": [ -+ "V8_TARGET_ARCH_S390", -+ "V8_TARGET_ARCH_S390X", -+ ], - }, - no_match_error = "Please specify a target cpu supported by v8", - ) + select({ -- "@config//:is_android": [ -+ "@v8//bazel/config:is_android": [ - "V8_HAVE_TARGET_OS", - "V8_TARGET_OS_ANDROID", - ], -- "@config//:is_linux": [ -+ "@v8//bazel/config:is_linux": [ - "V8_HAVE_TARGET_OS", - "V8_TARGET_OS_LINUX", - ], -- "@config//:is_macos": [ -+ "@v8//bazel/config:is_macos": [ - "V8_HAVE_TARGET_OS", - "V8_TARGET_OS_MACOSX", - ], -- "@config//:is_windows": [ -+ "@v8//bazel/config:is_windows": [ - "V8_HAVE_TARGET_OS", - "V8_TARGET_OS_WIN", - "UNICODE", -@@ -622,7 +621,7 @@ filegroup( - "src/base/vlq-base64.h", - "src/base/platform/yield-processor.h", - ] + select({ -- "@config//:is_posix": [ -+ "@v8//bazel/config:is_posix": [ - "src/base/platform/platform-posix.cc", - "src/base/platform/platform-posix.h", - "src/base/platform/platform-posix-time.cc", -@@ -630,19 +629,19 @@ filegroup( - ], - "//conditions:default": [], - }) + select({ -- "@config//:is_linux": [ -+ "@v8//bazel/config:is_linux": [ - "src/base/debug/stack_trace_posix.cc", - "src/base/platform/platform-linux.cc", - ], -- "@config//:is_android": [ -+ "@v8//bazel/config:is_android": [ - "src/base/debug/stack_trace_android.cc", - "src/base/platform/platform-linux.cc", - ], -- "@config//:is_macos": [ -+ "@v8//bazel/config:is_macos": [ - "src/base/debug/stack_trace_posix.cc", - "src/base/platform/platform-macos.cc", - ], -- "@config//:is_windows": [ -+ "@v8//bazel/config:is_windows": [ - "src/base/win32-headers.h", - "src/base/debug/stack_trace_win.cc", - "src/base/platform/platform-win32.cc", -@@ -654,7 +653,6 @@ filegroup( - filegroup( - name = "v8_libplatform_files", - srcs = [ -- "base/trace_event/common/trace_event_common.h", - "include/libplatform/libplatform.h", - "include/libplatform/libplatform-export.h", - "include/libplatform/v8-tracing.h", -@@ -982,7 +980,6 @@ filegroup( - ":v8_cppgc_shared_files", - ":v8_bigint", - ":generated_bytecode_builtins_list", -- "base/trace_event/common/trace_event_common.h", - "include/cppgc/common.h", - "include/v8-inspector-protocol.h", - "include/v8-inspector.h", -@@ -1966,8 +1963,6 @@ filegroup( - "src/snapshot/shared-heap-serializer.cc", - "src/snapshot/snapshot-compression.cc", - "src/snapshot/snapshot-compression.h", -- "third_party/zlib/google/compression_utils_portable.h", -- "third_party/zlib/google/compression_utils_portable.cc", - "src/snapshot/snapshot-data.cc", - "src/snapshot/snapshot-data.h", - "src/snapshot/snapshot-source-sink.cc", -@@ -2072,7 +2067,7 @@ filegroup( - "src/heap/third-party/heap-api.h", - "src/heap/third-party/heap-api-stub.cc", - ] + select({ -- "@config//:v8_target_ia32": [ -+ "@v8//bazel/config:v8_target_ia32": [ - "src/baseline/ia32/baseline-assembler-ia32-inl.h", - "src/baseline/ia32/baseline-compiler-ia32-inl.h", - "src/codegen/shared-ia32-x64/macro-assembler-shared-ia32-x64.h", -@@ -2100,7 +2095,7 @@ filegroup( - "src/regexp/ia32/regexp-macro-assembler-ia32.h", - "src/wasm/baseline/ia32/liftoff-assembler-ia32.h", - ], -- "@config//:v8_target_x64": [ -+ "@v8//bazel/config:v8_target_x64": [ - "src/baseline/x64/baseline-assembler-x64-inl.h", - "src/baseline/x64/baseline-compiler-x64-inl.h", - "src/codegen/shared-ia32-x64/macro-assembler-shared-ia32-x64.h", -@@ -2132,7 +2127,7 @@ filegroup( - "src/regexp/x64/regexp-macro-assembler-x64.h", - "src/wasm/baseline/x64/liftoff-assembler-x64.h", - ], -- "@config//:v8_target_arm": [ -+ "@v8//bazel/config:v8_target_arm": [ - "src/baseline/arm/baseline-assembler-arm-inl.h", - "src/baseline/arm/baseline-compiler-arm-inl.h", - "src/codegen/arm/assembler-arm-inl.h", -@@ -2163,7 +2158,7 @@ filegroup( - "src/regexp/arm/regexp-macro-assembler-arm.h", - "src/wasm/baseline/arm/liftoff-assembler-arm.h", - ], -- "@config//:v8_target_arm64": [ -+ "@v8//bazel/config:v8_target_arm64": [ - "src/baseline/arm64/baseline-assembler-arm64-inl.h", - "src/baseline/arm64/baseline-compiler-arm64-inl.h", - "src/codegen/arm64/assembler-arm64-inl.h", -@@ -2206,31 +2201,59 @@ filegroup( - "src/regexp/arm64/regexp-macro-assembler-arm64.h", - "src/wasm/baseline/arm64/liftoff-assembler-arm64.h", - ], -+ "@v8//bazel/config:v8_target_s390x": [ -+ "src/baseline/s390/baseline-assembler-s390-inl.h", -+ "src/baseline/s390/baseline-compiler-s390-inl.h", -+ "src/codegen/s390/assembler-s390-inl.h", -+ "src/codegen/s390/assembler-s390.h", -+ "src/codegen/s390/constants-s390.h", -+ "src/codegen/s390/interface-descriptors-s390-inl.h", -+ "src/codegen/s390/macro-assembler-s390.h", -+ "src/codegen/s390/register-s390.h", -+ "src/compiler/backend/s390/instruction-codes-s390.h", -+ "src/compiler/backend/s390/unwinding-info-writer-s390.h", -+ "src/execution/s390/frame-constants-s390.h", -+ "src/execution/s390/simulator-s390.h", -+ "src/regexp/s390/regexp-macro-assembler-s390.h", -+ "src/wasm/baseline/s390/liftoff-assembler-s390.h", -+ "src/codegen/s390/assembler-s390.cc", -+ "src/codegen/s390/constants-s390.cc", -+ "src/codegen/s390/cpu-s390.cc", -+ "src/codegen/s390/macro-assembler-s390.cc", -+ "src/compiler/backend/s390/code-generator-s390.cc", -+ "src/compiler/backend/s390/instruction-scheduler-s390.cc", -+ "src/compiler/backend/s390/instruction-selector-s390.cc", -+ "src/compiler/backend/s390/unwinding-info-writer-s390.cc", -+ "src/deoptimizer/s390/deoptimizer-s390.cc", -+ "src/diagnostics/s390/disasm-s390.cc", -+ "src/diagnostics/s390/eh-frame-s390.cc", -+ "src/diagnostics/s390/unwinder-s390.cc", -+ "src/execution/s390/frame-constants-s390.cc", -+ "src/execution/s390/simulator-s390.cc", -+ "src/regexp/s390/regexp-macro-assembler-s390.cc", -+ ], - }) + select({ - # Only for x64 builds and for arm64 with x64 host simulator. -- "@config//:is_posix_x64": [ -+ "@v8//bazel/config:is_posix_x64": [ - "src/trap-handler/handler-inside-posix.cc", - "src/trap-handler/handler-outside-posix.cc", - ], - "//conditions:default": [], - }) + select({ -- "@config//:v8_arm64_simulator": [ -+ "@v8//bazel/config:v8_arm64_simulator": [ - "src/trap-handler/trap-handler-simulator.h", - "src/trap-handler/handler-outside-simulator.cc", - ], - "//conditions:default": [], - }) + select({ -- "@config//:is_windows": [ -+ "@v8//bazel/config:is_windows": [ - "src/trap-handler/handler-inside-win.cc", - "src/trap-handler/handler-outside-win.cc", - "src/trap-handler/handler-inside-win.h", -- # Needed on windows to work around https://github.com/bazelbuild/bazel/issues/6337 -- "third_party/zlib/zlib.h", -- "third_party/zlib/zconf.h", - ], - "//conditions:default": [], - }) + select({ -- "@config//:is_windows_64bit": [ -+ "@v8//bazel/config:is_windows_64bit": [ - "src/diagnostics/unwinding-info-win64.cc", - "src/diagnostics/unwinding-info-win64.h", - ], -@@ -2712,10 +2735,11 @@ filegroup( - "src/interpreter/interpreter-intrinsics-generator.cc", - "src/interpreter/interpreter-intrinsics-generator.h", - ] + select({ -- "@config//:v8_target_ia32": ["src/builtins/ia32/builtins-ia32.cc"], -- "@config//:v8_target_x64": ["src/builtins/x64/builtins-x64.cc"], -- "@config//:v8_target_arm": ["src/builtins/arm/builtins-arm.cc"], -- "@config//:v8_target_arm64": ["src/builtins/arm64/builtins-arm64.cc"], -+ "@v8//bazel/config:v8_target_ia32": ["src/builtins/ia32/builtins-ia32.cc"], -+ "@v8//bazel/config:v8_target_x64": ["src/builtins/x64/builtins-x64.cc"], -+ "@v8//bazel/config:v8_target_arm": ["src/builtins/arm/builtins-arm.cc"], -+ "@v8//bazel/config:v8_target_arm64": ["src/builtins/arm64/builtins-arm64.cc"], -+ "@v8//bazel/config:v8_target_s390x": ["src/builtins/s390/builtins-s390.cc"], - }) + select({ - ":is_v8_enable_webassembly": [ - "src/builtins/builtins-wasm-gen.cc", -@@ -2832,13 +2856,14 @@ filegroup( - # Note these cannot be v8_target_is_* selects because these contain - # inline assembly that runs inside the executable. Since these are - # linked directly into mksnapshot, they must use the actual target cpu. -- "@config//:is_inline_asm_ia32": ["src/heap/base/asm/ia32/push_registers_asm.cc"], -- "@config//:is_inline_asm_x64": ["src/heap/base/asm/x64/push_registers_asm.cc"], -- "@config//:is_inline_asm_arm": ["src/heap/base/asm/arm/push_registers_asm.cc"], -- "@config//:is_inline_asm_arm64": ["src/heap/base/asm/arm64/push_registers_asm.cc"], -- "@config//:is_msvc_asm_ia32": ["src/heap/base/asm/ia32/push_registers_masm.S"], -- "@config//:is_msvc_asm_x64": ["src/heap/base/asm/x64/push_registers_masm.S"], -- "@config//:is_msvc_asm_arm64": ["src/heap/base/asm/arm64/push_registers_masm.S"], -+ "@v8//bazel/config:is_inline_asm_ia32": ["src/heap/base/asm/ia32/push_registers_asm.cc"], -+ "@v8//bazel/config:is_inline_asm_x64": ["src/heap/base/asm/x64/push_registers_asm.cc"], -+ "@v8//bazel/config:is_inline_asm_arm": ["src/heap/base/asm/arm/push_registers_asm.cc"], -+ "@v8//bazel/config:is_inline_asm_arm64": ["src/heap/base/asm/arm64/push_registers_asm.cc"], -+ "@v8//bazel/config:is_inline_asm_s390x": ["src/heap/base/asm/s390/push_registers_asm.cc"], -+ "@v8//bazel/config:is_msvc_asm_ia32": ["src/heap/base/asm/ia32/push_registers_masm.S"], -+ "@v8//bazel/config:is_msvc_asm_x64": ["src/heap/base/asm/x64/push_registers_masm.S"], -+ "@v8//bazel/config:is_msvc_asm_arm64": ["src/heap/base/asm/arm64/push_registers_masm.S"], - }), - ) - -@@ -2992,16 +3017,17 @@ filegroup( - srcs = [ - "src/init/setup-isolate-deserialize.cc", - ] + select({ -- "@config//:v8_target_arm": [ -+ "@v8//bazel/config:v8_target_arm": [ - "google3/snapshots/arm/noicu/embedded.S", - "google3/snapshots/arm/noicu/snapshot.cc", - ], -- "@config//:v8_target_ia32": [ -+ "@v8//bazel/config:v8_target_ia32": [ - "google3/snapshots/ia32/noicu/embedded.S", - "google3/snapshots/ia32/noicu/snapshot.cc", - ], -- "@config//:v8_target_arm64": [":noicu/generated_snapshot_files"], -- "@config//:v8_target_x64": [":noicu/generated_snapshot_files"], -+ "@v8//bazel/config:v8_target_arm64": [":noicu/generated_snapshot_files"], -+ "@v8//bazel/config:v8_target_s390x": [":noicu/generated_snapshot_files"], -+ "@v8//bazel/config:v8_target_x64": [":noicu/generated_snapshot_files"], - }), - ) - -@@ -3010,16 +3036,17 @@ filegroup( - srcs = [ - "src/init/setup-isolate-deserialize.cc", - ] + select({ -- "@config//:v8_target_arm": [ -+ "@v8//bazel/config:v8_target_arm": [ - "google3/snapshots/arm/icu/embedded.S", - "google3/snapshots/arm/icu/snapshot.cc", - ], -- "@config//:v8_target_ia32": [ -+ "@v8//bazel/config:v8_target_ia32": [ - "google3/snapshots/ia32/icu/embedded.S", - "google3/snapshots/ia32/icu/snapshot.cc", - ], -- "@config//:v8_target_arm64": [":icu/generated_snapshot_files"], -- "@config//:v8_target_x64": [":icu/generated_snapshot_files"], -+ "@v8//bazel/config:v8_target_arm64": [":icu/generated_snapshot_files"], -+ "@v8//bazel/config:v8_target_s390x": [":icu/generated_snapshot_files"], -+ "@v8//bazel/config:v8_target_x64": [":icu/generated_snapshot_files"], - }), - ) - -@@ -3050,7 +3077,7 @@ v8_torque( - ":is_v8_annotate_torque_ir": ["-annotate-ir"], - "//conditions:default": [], - }) + select({ -- "@config//:v8_target_is_32_bits": ["-m32"], -+ "@v8//bazel/config:v8_target_is_32_bits": ["-m32"], - "//conditions:default": [], - }), - extras = [ -@@ -3079,9 +3106,39 @@ v8_torque( - noicu_srcs = [":noicu/torque_files"], - ) - -+py_binary( -+ name = "code_generator", -+ srcs = [ -+ "third_party/inspector_protocol/code_generator.py", -+ "third_party/inspector_protocol/pdl.py", -+ ], -+ data = [ -+ "third_party/inspector_protocol/lib/Forward_h.template", -+ "third_party/inspector_protocol/lib/Object_cpp.template", -+ "third_party/inspector_protocol/lib/Object_h.template", -+ "third_party/inspector_protocol/lib/Protocol_cpp.template", -+ "third_party/inspector_protocol/lib/ValueConversions_cpp.template", -+ "third_party/inspector_protocol/lib/ValueConversions_h.template", -+ "third_party/inspector_protocol/lib/Values_cpp.template", -+ "third_party/inspector_protocol/lib/Values_h.template", -+ "third_party/inspector_protocol/lib/base_string_adapter_cc.template", -+ "third_party/inspector_protocol/lib/base_string_adapter_h.template", -+ "third_party/inspector_protocol/templates/Exported_h.template", -+ "third_party/inspector_protocol/templates/Imported_h.template", -+ "third_party/inspector_protocol/templates/TypeBuilder_cpp.template", -+ "third_party/inspector_protocol/templates/TypeBuilder_h.template", -+ ], -+ deps = [ -+ requirement("jinja2"), -+ ], -+) -+ - genrule( - name = "generated_inspector_files", -- srcs = ["include/js_protocol.pdl"], -+ srcs = [ -+ "include/js_protocol.pdl", -+ "src/inspector/inspector_protocol_config.json", -+ ], - outs = [ - "include/inspector/Debugger.h", - "include/inspector/Runtime.h", -@@ -3102,10 +3159,27 @@ genrule( - "src/inspector/protocol/Schema.cpp", - "src/inspector/protocol/Schema.h", - ], -- cmd = "bazel/generate-inspector-files.sh $(@D)", -- cmd_bat = "bazel\\generate-inspector-files.cmd $(@D)", -- local = 1, -+ cmd = """ -+ export DIR=$$(dirname $$(dirname $(location :include/js_protocol.pdl))) \ -+ && \ -+ sed -e 's@"path": "..\\/..\\/@"path": "'"$${DIR}"'\\/@g' \ -+ -e 's@"output": "..\\/..\\/@"output": "@g' \ -+ -e 's@"output": "protocol"@"output": "src\\/inspector\\/protocol"@g' \ -+ $(location src/inspector/inspector_protocol_config.json) \ -+ > modified_config.json \ -+ && \ -+ $(location :code_generator) \ -+ --jinja_dir . \ -+ --inspector_protocol_dir third_party/inspector_protocol \ -+ --config modified_config.json \ -+ --output_base $(@D) \ -+ && \ -+ rm modified_config.json -+ """, - message = "Generating inspector files", -+ tools = [ -+ ":code_generator", -+ ], - ) - - filegroup( -@@ -3218,7 +3292,7 @@ cc_library( - ":torque_base_files", - ], - copts = select({ -- "@config//:is_posix": [ "-fexceptions" ], -+ "@v8//bazel/config:is_posix": [ "-fexceptions" ], - "//conditions:default": [], - }), - features = ["-use_header_modules"], -@@ -3236,7 +3310,7 @@ v8_library( - ], - icu_deps = [ - ":icu/generated_torque_headers", -- "@icu", -+ "@com_googlesource_chromium_icu//:icu", - ], - icu_srcs = [ - ":generated_regexp_special_case", -@@ -3251,23 +3325,29 @@ v8_library( - ], - deps = [ - ":v8_libbase", -- "@zlib", -+ "@com_googlesource_chromium_trace_event_common//:trace_event_common", -+ "@com_googlesource_chromium_zlib//:zlib", - ], - ) - - v8_library( - name = "v8", - srcs = [":v8_inspector_files"], -+ hdrs = [":public_header_files"], - icu_deps = [":icu/v8_libshared"], - icu_srcs = [":icu/snapshot_files"], - noicu_deps = [":noicu/v8_libshared"], - noicu_srcs = [":noicu/snapshot_files"], -+ visibility = ["//visibility:public"], - ) - - # TODO(victorgomes): Check if v8_enable_webassembly is true. - v8_library( - name = "wee8", - srcs = [":wee8_files"], -+ hdrs = [":public_wasm_c_api_header_files"], -+ strip_include_prefix = "third_party", -+ visibility = ["//visibility:public"], - deps = [":noicu/v8"], - ) - -@@ -3314,7 +3394,7 @@ v8_binary( - "UNISTR_FROM_CHAR_EXPLICIT=", - ], - deps = [ -- "@icu", -+ "@com_googlesource_chromium_icu//:icu", - ], - ) - -@@ -3325,12 +3405,12 @@ v8_binary( - ":torque_base_files", - ], - copts = select({ -- "@config//:is_posix": [ "-fexceptions" ], -+ "@v8//bazel/config:is_posix": [ "-fexceptions" ], - "//conditions:default": [], - }), - features = ["-use_header_modules"], - linkopts = select({ -- "@config//:is_android": ["-llog"], -+ "@v8//bazel/config:is_android": ["-llog"], - "//conditions:default": [], - }), - deps = ["v8_libbase"], -@@ -3341,7 +3421,7 @@ v8_binary( - srcs = [":mksnapshot_files"], - icu_deps = [":icu/v8_libshared"], - linkopts = select({ -- "@config//:is_android": ["-llog"], -+ "@v8//bazel/config:is_android": ["-llog"], - "//conditions:default": [], - }), - noicu_deps = [":v8_libshared_noicu"], -diff --git a/WORKSPACE b/WORKSPACE -index 32fff02aab..4aacf4354f 100644 ---- a/WORKSPACE -+++ b/WORKSPACE -@@ -4,7 +4,9 @@ - - workspace(name = "v8") - -+load("@bazel_tools//tools/build_defs/repo:git.bzl", "new_git_repository") - load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") -+ - http_archive( - name = "bazel_skylib", - urls = [ -@@ -16,20 +18,37 @@ http_archive( - load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") - bazel_skylib_workspace() - --new_local_repository( -- name = "config", -- path = "bazel/config", -- build_file = "bazel/config/BUILD.bazel", -+new_git_repository( -+ name = "com_googlesource_chromium_icu", -+ build_file = "//:bazel/BUILD.icu", -+ commit = "fbc6faf1c2c429cd27fabe615a89f0b217aa4213", -+ remote = "https://chromium.googlesource.com/chromium/deps/icu.git", -+) -+ -+new_git_repository( -+ name = "com_googlesource_chromium_trace_event_common", -+ build_file = "//:bazel/BUILD.trace_event_common", -+ commit = "7f36dbc19d31e2aad895c60261ca8f726442bfbb", -+ remote = "https://chromium.googlesource.com/chromium/src/base/trace_event/common.git", - ) - --new_local_repository( -- name = "zlib", -- path = "third_party/zlib", -- build_file = "bazel/BUILD.zlib", -+new_git_repository( -+ name = "com_googlesource_chromium_zlib", -+ build_file = "//:bazel/BUILD.zlib", -+ commit = "efd9399ae01364926be2a38946127fdf463480db", -+ remote = "https://chromium.googlesource.com/chromium/src/third_party/zlib.git", - ) - --new_local_repository( -- name = "icu", -- path = "third_party/icu", -- build_file = "bazel/BUILD.icu", -+http_archive( -+ name = "rules_python", -+ sha256 = "cd6730ed53a002c56ce4e2f396ba3b3be262fd7cb68339f0377a45e8227fe332", -+ url = "https://github.com/bazelbuild/rules_python/releases/download/0.5.0/rules_python-0.5.0.tar.gz", -+) -+ -+load("@rules_python//python:pip.bzl", "pip_install") -+ -+pip_install( -+ name = "v8_python_deps", -+ extra_pip_args = ["--require-hashes"], -+ requirements = "//:bazel/requirements.txt", - ) -diff --git a/bazel/BUILD.trace_event_common b/bazel/BUILD.trace_event_common -new file mode 100644 -index 0000000000..685b284071 ---- /dev/null -+++ b/bazel/BUILD.trace_event_common -@@ -0,0 +1,10 @@ -+# Copyright 2021 the V8 project authors. All rights reserved. -+# Use of this source code is governed by a BSD-style license that can be -+# found in the LICENSE file. -+ -+cc_library( -+ name = "trace_event_common", -+ hdrs = ["trace_event_common.h"], -+ include_prefix = "base/trace_event/common", -+ visibility = ["//visibility:public"], -+) -diff --git a/bazel/config/BUILD.bazel b/bazel/config/BUILD.bazel -index 78a1b5debd..b7edae5815 100644 ---- a/bazel/config/BUILD.bazel -+++ b/bazel/config/BUILD.bazel -@@ -15,6 +15,20 @@ package( - ], - ) - -+config_setting( -+ name = "is_fastbuild", -+ values = { -+ "compilation_mode": "fastbuild", -+ }, -+) -+ -+config_setting( -+ name = "is_debug", -+ values = { -+ "compilation_mode": "dbg", -+ }, -+) -+ - config_setting( - name = "platform_cpu_x64", - constraint_values = ["@platforms//cpu:x86_64"], -@@ -27,7 +41,7 @@ config_setting( - - config_setting( - name = "platform_cpu_arm64", -- constraint_values = ["@platforms//cpu:arm"], -+ constraint_values = ["@platforms//cpu:aarch64"], - ) - - config_setting( -@@ -35,6 +49,11 @@ config_setting( - constraint_values = ["@platforms//cpu:arm"], - ) - -+config_setting( -+ name = "platform_cpu_s390x", -+ constraint_values = ["@platforms//cpu:s390x"], -+) -+ - v8_target_cpu( - name = "v8_target_cpu", - build_setting_default = "none", -@@ -58,15 +77,20 @@ v8_configure_target_cpu( - ) - - v8_configure_target_cpu( -- name = "arm", -+ name = "arm64", - matching_configs = [":platform_cpu_arm64"], - ) - - v8_configure_target_cpu( -- name = "arm64", -+ name = "arm", - matching_configs = [":platform_cpu_arm"], - ) - -+v8_configure_target_cpu( -+ name = "s390x", -+ matching_configs = [":platform_cpu_s390x"], -+) -+ - selects.config_setting_group( - name = "v8_target_is_32_bits", - match_any = [ -@@ -158,6 +182,11 @@ selects.config_setting_group( - match_all = [":is_posix", ":is_arm"], - ) - -+selects.config_setting_group( -+ name = "is_inline_asm_s390x", -+ match_all = [":is_posix", ":is_s390x"], -+) -+ - selects.config_setting_group( - name = "is_msvc_asm_x64", - match_all = [":is_windows", ":is_x64"], -@@ -172,3 +201,64 @@ selects.config_setting_group( - name = "is_msvc_asm_arm64", - match_all = [":is_windows", ":is_arm64"], - ) -+ -+config_setting( -+ name = "is_compiler_default", -+ flag_values = { -+ "@bazel_tools//tools/cpp:compiler": "compiler", -+ }, -+) -+ -+selects.config_setting_group( -+ name = "is_compiler_default_on_linux", -+ match_all = [ -+ ":is_compiler_default", -+ ":is_linux", -+ ], -+) -+ -+selects.config_setting_group( -+ name = "is_compiler_default_on_macos", -+ match_all = [ -+ ":is_compiler_default", -+ ":is_macos", -+ ], -+) -+ -+config_setting( -+ name = "is_compiler_clang", -+ flag_values = { -+ "@bazel_tools//tools/cpp:compiler": "clang", -+ }, -+) -+ -+selects.config_setting_group( -+ name = "is_clang", -+ match_any = [ -+ ":is_compiler_default_on_macos", -+ ":is_compiler_clang", -+ ], -+) -+ -+config_setting( -+ name = "is_compiler_gcc", -+ flag_values = { -+ "@bazel_tools//tools/cpp:compiler": "gcc", -+ }, -+) -+ -+selects.config_setting_group( -+ name = "is_gcc", -+ match_any = [ -+ ":is_compiler_default_on_linux", -+ ":is_compiler_gcc", -+ ], -+) -+ -+selects.config_setting_group( -+ name = "is_gcc_fastbuild", -+ match_all = [ -+ ":is_gcc", -+ ":is_fastbuild", -+ ], -+) -diff --git a/bazel/config/v8-target-cpu.bzl b/bazel/config/v8-target-cpu.bzl -index 2d5d241ebf..72aae9e270 100644 ---- a/bazel/config/v8-target-cpu.bzl -+++ b/bazel/config/v8-target-cpu.bzl -@@ -14,7 +14,7 @@ V8CpuTypeInfo = provider( - ) - - def _host_target_cpu_impl(ctx): -- allowed_values = ["arm", "arm64", "ia32", "x64", "none"] -+ allowed_values = ["arm", "arm64", "ia32", "s390x", "x64", "none"] - cpu_type = ctx.build_setting_value - if cpu_type in allowed_values: - return V8CpuTypeInfo(value = cpu_type) -diff --git a/bazel/defs.bzl b/bazel/defs.bzl -index 53fccf92e7..14fff6f049 100644 ---- a/bazel/defs.bzl -+++ b/bazel/defs.bzl -@@ -89,7 +89,7 @@ def _default_args(): - return struct( - deps = [":define_flags"], - defines = select({ -- "@config//:is_windows": [ -+ "@v8//bazel/config:is_windows": [ - "UNICODE", - "_UNICODE", - "_CRT_RAND_S", -@@ -98,29 +98,59 @@ def _default_args(): - "//conditions:default": [], - }), - copts = select({ -- "@config//:is_posix": [ -+ "@v8//bazel/config:is_posix": [ - "-fPIC", -+ "-fno-strict-aliasing", - "-Werror", - "-Wextra", -+ "-Wno-unknown-warning-option", - "-Wno-bitwise-instead-of-logical", - "-Wno-builtin-assume-aligned-alignment", - "-Wno-unused-parameter", - "-Wno-implicit-int-float-conversion", - "-Wno-deprecated-copy", - "-Wno-non-virtual-dtor", -- "-std=c++17", - "-isystem .", - ], - "//conditions:default": [], -+ }) + select({ -+ "@v8//bazel/config:is_clang": [ -+ "-Wno-invalid-offsetof", -+ "-std=c++17", -+ ], -+ "@v8//bazel/config:is_gcc": [ -+ "-Wno-extra", -+ "-Wno-comments", -+ "-Wno-deprecated-declarations", -+ "-Wno-implicit-fallthrough", -+ "-Wno-maybe-uninitialized", -+ "-Wno-mismatched-new-delete", -+ "-Wno-redundant-move", -+ "-Wno-return-type", -+ # Use GNU dialect, because GCC doesn't allow using -+ # ##__VA_ARGS__ when in standards-conforming mode. -+ "-std=gnu++17", -+ ], -+ "@v8//bazel/config:is_windows": [ -+ "/std:c++17", -+ ], -+ "//conditions:default": [], -+ }) + select({ -+ "@v8//bazel/config:is_gcc_fastbuild": [ -+ # Non-debug builds without optimizations fail because -+ # of recursive inlining of "always_inline" functions. -+ "-O1", -+ ], -+ "//conditions:default": [], - }), - includes = ["include"], - linkopts = select({ -- "@config//:is_windows": [ -+ "@v8//bazel/config:is_windows": [ - "Winmm.lib", - "DbgHelp.lib", - "Advapi32.lib", - ], -- "@config//:is_macos": ["-pthread"], -+ "@v8//bazel/config:is_macos": ["-pthread"], - "//conditions:default": ["-Wl,--no-as-needed -ldl -pthread"], - }) + select({ - ":should_add_rdynamic": ["-rdynamic"], -@@ -248,8 +278,10 @@ def v8_library( - ) - - def _torque_impl(ctx): -- v8root = "." -- prefix = ctx.attr.prefix -+ if ctx.workspace_name == "v8": -+ v8root = "." -+ else: -+ v8root = "external/v8" - - # Arguments - args = [] -@@ -301,7 +333,6 @@ _v8_torque = rule( - cfg = "exec", - ), - "args": attr.string_list(), -- "v8root": attr.label(default = ":v8_root"), - }, - ) - -@@ -313,7 +344,7 @@ def v8_torque(name, noicu_srcs, icu_srcs, args, extras): - args = args, - extras = extras, - tool = select({ -- "@config//:v8_target_is_32_bits": ":torque_non_pointer_compression", -+ "@v8//bazel/config:v8_target_is_32_bits": ":torque_non_pointer_compression", - "//conditions:default": ":torque", - }), - ) -@@ -324,7 +355,7 @@ def v8_torque(name, noicu_srcs, icu_srcs, args, extras): - args = args, - extras = extras, - tool = select({ -- "@config//:v8_target_is_32_bits": ":torque_non_pointer_compression", -+ "@v8//bazel/config:v8_target_is_32_bits": ":torque_non_pointer_compression", - "//conditions:default": ":torque", - }), - ) -@@ -334,6 +365,7 @@ def _v8_target_cpu_transition_impl(settings, attr): - "haswell": "x64", - "k8": "x64", - "x86_64": "x64", -+ "darwin": "x64", - "darwin_x86_64": "x64", - "x86": "ia32", - "ppc": "ppc64", -@@ -342,14 +374,14 @@ def _v8_target_cpu_transition_impl(settings, attr): - "armeabi-v7a": "arm32", - } - v8_target_cpu = mapping[settings["//command_line_option:cpu"]] -- return {"@config//:v8_target_cpu": v8_target_cpu} -+ return {"@v8//bazel/config:v8_target_cpu": v8_target_cpu} +@@ -106,7 +106,7 @@ v8_flag(name = "v8_enable_disassembler") - # Set the v8_target_cpu to be the correct architecture given the cpu specified - # on the command line. - v8_target_cpu_transition = transition( - implementation = _v8_target_cpu_transition_impl, - inputs = ["//command_line_option:cpu"], -- outputs = ["@config//:v8_target_cpu"], -+ outputs = ["@v8//bazel/config:v8_target_cpu"], + v8_flag( + name = "v8_enable_handle_zapping", +- default = True, ++ default = False, ) - def _mksnapshot(ctx): -diff --git a/bazel/generate-inspector-files.cmd b/bazel/generate-inspector-files.cmd -deleted file mode 100644 -index 202dd81d7c..0000000000 ---- a/bazel/generate-inspector-files.cmd -+++ /dev/null -@@ -1,24 +0,0 @@ --REM Copyright 2021 the V8 project authors. All rights reserved. --REM Use of this source code is governed by a BSD-style license that can be --REM found in the LICENSE file. -- --set BAZEL_OUT=%1 -- --REM Bazel nukes all env vars, and we need the following for gn to work --set DEPOT_TOOLS_WIN_TOOLCHAIN=0 --set ProgramFiles(x86)=C:\Program Files (x86) --set windir=C:\Windows -- --REM Create a default GN output folder --cmd.exe /S /E:ON /V:ON /D /c gn gen out/inspector -- --REM Generate inspector files --cmd.exe /S /E:ON /V:ON /D /c autoninja -C out/inspector gen/src/inspector/protocol/Forward.h -- --REM Create directories in bazel output folder --MKDIR -p %BAZEL_OUT%\include\inspector --MKDIR -p %BAZEL_OUT%\src\inspector\protocol -- --REM Copy generated files to bazel output folder --COPY out\inspector\gen\include\inspector\* %BAZEL_OUT%\include\inspector\ --COPY out\inspector\gen\src\inspector\protocol\* %BAZEL_OUT%\src\inspector\protocol\ -\ No newline at end of file -diff --git a/bazel/generate-inspector-files.sh b/bazel/generate-inspector-files.sh -deleted file mode 100755 -index 9547041c33..0000000000 ---- a/bazel/generate-inspector-files.sh -+++ /dev/null -@@ -1,21 +0,0 @@ --# Copyright 2021 the V8 project authors. All rights reserved. --# Use of this source code is governed by a BSD-style license that can be --# found in the LICENSE file. -- --set -e -- --BAZEL_OUT=$1 -- --# Create a default GN output folder --gn gen out/inspector -- --# Generate inspector files --autoninja -C out/inspector src/inspector:protocol_generated_sources -- --# Create directories in bazel output folder --mkdir -p $BAZEL_OUT/include/inspector --mkdir -p $BAZEL_OUT/src/inspector/protocol -- --# Copy generated files to bazel output folder --cp out/inspector/gen/include/inspector/* $BAZEL_OUT/include/inspector/ --cp out/inspector/gen/src/inspector/protocol/* $BAZEL_OUT/src/inspector/protocol/ -diff --git a/bazel/requirements.in b/bazel/requirements.in -new file mode 100644 -index 0000000000..7f7afbf3bf ---- /dev/null -+++ b/bazel/requirements.in -@@ -0,0 +1 @@ -+jinja2 -diff --git a/bazel/requirements.txt b/bazel/requirements.txt -new file mode 100644 -index 0000000000..a9c132f688 ---- /dev/null -+++ b/bazel/requirements.txt -@@ -0,0 +1,81 @@ -+# -+# This file is autogenerated by pip-compile with python 3.9 -+# To update, run: -+# -+# pip-compile --generate-hashes requirements.in -+# -+jinja2==3.0.3 \ -+ --hash=sha256:077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8 \ -+ --hash=sha256:611bb273cd68f3b993fabdc4064fc858c5b47a973cb5aa7999ec1ba405c87cd7 -+ # via -r requirements.in -+markupsafe==2.0.1 \ -+ --hash=sha256:01a9b8ea66f1658938f65b93a85ebe8bc016e6769611be228d797c9d998dd298 \ -+ --hash=sha256:023cb26ec21ece8dc3907c0e8320058b2e0cb3c55cf9564da612bc325bed5e64 \ -+ --hash=sha256:0446679737af14f45767963a1a9ef7620189912317d095f2d9ffa183a4d25d2b \ -+ --hash=sha256:04635854b943835a6ea959e948d19dcd311762c5c0c6e1f0e16ee57022669194 \ -+ --hash=sha256:0717a7390a68be14b8c793ba258e075c6f4ca819f15edfc2a3a027c823718567 \ -+ --hash=sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff \ -+ --hash=sha256:0d4b31cc67ab36e3392bbf3862cfbadac3db12bdd8b02a2731f509ed5b829724 \ -+ --hash=sha256:10f82115e21dc0dfec9ab5c0223652f7197feb168c940f3ef61563fc2d6beb74 \ -+ --hash=sha256:168cd0a3642de83558a5153c8bd34f175a9a6e7f6dc6384b9655d2697312a646 \ -+ --hash=sha256:1d609f577dc6e1aa17d746f8bd3c31aa4d258f4070d61b2aa5c4166c1539de35 \ -+ --hash=sha256:1f2ade76b9903f39aa442b4aadd2177decb66525062db244b35d71d0ee8599b6 \ -+ --hash=sha256:20dca64a3ef2d6e4d5d615a3fd418ad3bde77a47ec8a23d984a12b5b4c74491a \ -+ --hash=sha256:2a7d351cbd8cfeb19ca00de495e224dea7e7d919659c2841bbb7f420ad03e2d6 \ -+ --hash=sha256:2d7d807855b419fc2ed3e631034685db6079889a1f01d5d9dac950f764da3dad \ -+ --hash=sha256:2ef54abee730b502252bcdf31b10dacb0a416229b72c18b19e24a4509f273d26 \ -+ --hash=sha256:36bc903cbb393720fad60fc28c10de6acf10dc6cc883f3e24ee4012371399a38 \ -+ --hash=sha256:37205cac2a79194e3750b0af2a5720d95f786a55ce7df90c3af697bfa100eaac \ -+ --hash=sha256:3c112550557578c26af18a1ccc9e090bfe03832ae994343cfdacd287db6a6ae7 \ -+ --hash=sha256:3dd007d54ee88b46be476e293f48c85048603f5f516008bee124ddd891398ed6 \ -+ --hash=sha256:4296f2b1ce8c86a6aea78613c34bb1a672ea0e3de9c6ba08a960efe0b0a09047 \ -+ --hash=sha256:47ab1e7b91c098ab893b828deafa1203de86d0bc6ab587b160f78fe6c4011f75 \ -+ --hash=sha256:49e3ceeabbfb9d66c3aef5af3a60cc43b85c33df25ce03d0031a608b0a8b2e3f \ -+ --hash=sha256:4dc8f9fb58f7364b63fd9f85013b780ef83c11857ae79f2feda41e270468dd9b \ -+ --hash=sha256:4efca8f86c54b22348a5467704e3fec767b2db12fc39c6d963168ab1d3fc9135 \ -+ --hash=sha256:53edb4da6925ad13c07b6d26c2a852bd81e364f95301c66e930ab2aef5b5ddd8 \ -+ --hash=sha256:5855f8438a7d1d458206a2466bf82b0f104a3724bf96a1c781ab731e4201731a \ -+ --hash=sha256:594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a \ -+ --hash=sha256:5b6d930f030f8ed98e3e6c98ffa0652bdb82601e7a016ec2ab5d7ff23baa78d1 \ -+ --hash=sha256:5bb28c636d87e840583ee3adeb78172efc47c8b26127267f54a9c0ec251d41a9 \ -+ --hash=sha256:60bf42e36abfaf9aff1f50f52644b336d4f0a3fd6d8a60ca0d054ac9f713a864 \ -+ --hash=sha256:611d1ad9a4288cf3e3c16014564df047fe08410e628f89805e475368bd304914 \ -+ --hash=sha256:6300b8454aa6930a24b9618fbb54b5a68135092bc666f7b06901f897fa5c2fee \ -+ --hash=sha256:63f3268ba69ace99cab4e3e3b5840b03340efed0948ab8f78d2fd87ee5442a4f \ -+ --hash=sha256:6557b31b5e2c9ddf0de32a691f2312a32f77cd7681d8af66c2692efdbef84c18 \ -+ --hash=sha256:693ce3f9e70a6cf7d2fb9e6c9d8b204b6b39897a2c4a1aa65728d5ac97dcc1d8 \ -+ --hash=sha256:6a7fae0dd14cf60ad5ff42baa2e95727c3d81ded453457771d02b7d2b3f9c0c2 \ -+ --hash=sha256:6c4ca60fa24e85fe25b912b01e62cb969d69a23a5d5867682dd3e80b5b02581d \ -+ --hash=sha256:6fcf051089389abe060c9cd7caa212c707e58153afa2c649f00346ce6d260f1b \ -+ --hash=sha256:7d91275b0245b1da4d4cfa07e0faedd5b0812efc15b702576d103293e252af1b \ -+ --hash=sha256:89c687013cb1cd489a0f0ac24febe8c7a666e6e221b783e53ac50ebf68e45d86 \ -+ --hash=sha256:8d206346619592c6200148b01a2142798c989edcb9c896f9ac9722a99d4e77e6 \ -+ --hash=sha256:905fec760bd2fa1388bb5b489ee8ee5f7291d692638ea5f67982d968366bef9f \ -+ --hash=sha256:97383d78eb34da7e1fa37dd273c20ad4320929af65d156e35a5e2d89566d9dfb \ -+ --hash=sha256:984d76483eb32f1bcb536dc27e4ad56bba4baa70be32fa87152832cdd9db0833 \ -+ --hash=sha256:99df47edb6bda1249d3e80fdabb1dab8c08ef3975f69aed437cb69d0a5de1e28 \ -+ --hash=sha256:9f02365d4e99430a12647f09b6cc8bab61a6564363f313126f775eb4f6ef798e \ -+ --hash=sha256:a30e67a65b53ea0a5e62fe23682cfe22712e01f453b95233b25502f7c61cb415 \ -+ --hash=sha256:ab3ef638ace319fa26553db0624c4699e31a28bb2a835c5faca8f8acf6a5a902 \ -+ --hash=sha256:aca6377c0cb8a8253e493c6b451565ac77e98c2951c45f913e0b52facdcff83f \ -+ --hash=sha256:add36cb2dbb8b736611303cd3bfcee00afd96471b09cda130da3581cbdc56a6d \ -+ --hash=sha256:b2f4bf27480f5e5e8ce285a8c8fd176c0b03e93dcc6646477d4630e83440c6a9 \ -+ --hash=sha256:b7f2d075102dc8c794cbde1947378051c4e5180d52d276987b8d28a3bd58c17d \ -+ --hash=sha256:baa1a4e8f868845af802979fcdbf0bb11f94f1cb7ced4c4b8a351bb60d108145 \ -+ --hash=sha256:be98f628055368795d818ebf93da628541e10b75b41c559fdf36d104c5787066 \ -+ --hash=sha256:bf5d821ffabf0ef3533c39c518f3357b171a1651c1ff6827325e4489b0e46c3c \ -+ --hash=sha256:c47adbc92fc1bb2b3274c4b3a43ae0e4573d9fbff4f54cd484555edbf030baf1 \ -+ --hash=sha256:cdfba22ea2f0029c9261a4bd07e830a8da012291fbe44dc794e488b6c9bb353a \ -+ --hash=sha256:d6c7ebd4e944c85e2c3421e612a7057a2f48d478d79e61800d81468a8d842207 \ -+ --hash=sha256:d7f9850398e85aba693bb640262d3611788b1f29a79f0c93c565694658f4071f \ -+ --hash=sha256:d8446c54dc28c01e5a2dbac5a25f071f6653e6e40f3a8818e8b45d790fe6ef53 \ -+ --hash=sha256:deb993cacb280823246a026e3b2d81c493c53de6acfd5e6bfe31ab3402bb37dd \ -+ --hash=sha256:e0f138900af21926a02425cf736db95be9f4af72ba1bb21453432a07f6082134 \ -+ --hash=sha256:e9936f0b261d4df76ad22f8fee3ae83b60d7c3e871292cd42f40b81b70afae85 \ -+ --hash=sha256:f0567c4dc99f264f49fe27da5f735f414c4e7e7dd850cfd8e69f0862d7c74ea9 \ -+ --hash=sha256:f5653a225f31e113b152e56f154ccbe59eeb1c7487b39b9d9f9cdb58e6c79dc5 \ -+ --hash=sha256:f826e31d18b516f653fe296d967d700fddad5901ae07c622bb3705955e1faa94 \ -+ --hash=sha256:f8ba0e8349a38d3001fae7eadded3f6606f0da5d748ee53cc1dab1d6527b9509 \ -+ --hash=sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51 \ -+ --hash=sha256:fa130dd50c57d53368c9d59395cb5526eda596d3ffe36666cd81a44d56e48872 -+ # via jinja2 + v8_flag(name = "v8_enable_hugepage") diff --git a/bazel/repositories.bzl b/bazel/repositories.bzl index 9e0c5ac48..8ac679bab 100644 --- a/bazel/repositories.bzl +++ b/bazel/repositories.bzl @@ -125,13 +125,18 @@ def proxy_wasm_cpp_host_repositories(): git_repository( name = "v8", - commit = "11559b4461ac0c3328354229e03c2a989b104ff9", + commit = "a5ff33ec02e0dff53217bf7fd5ca0ec504775d23", remote = "https://chromium.googlesource.com/v8/v8", - shallow_since = "1641210631 +0000", + shallow_since = "1641852349 +0000", patches = ["@proxy_wasm_cpp_host//bazel/external:v8.patch"], patch_args = ["-p1"], ) + native.bind( + name = "wee8", + actual = "@v8//:wee8", + ) + new_git_repository( name = "com_googlesource_chromium_trace_event_common", build_file = "@v8//:bazel/BUILD.trace_event_common", @@ -140,6 +145,11 @@ def proxy_wasm_cpp_host_repositories(): shallow_since = "1635355186 -0700", ) + native.bind( + name = "base_trace_event_common", + actual = "@com_googlesource_chromium_trace_event_common//:trace_event_common", + ) + new_git_repository( name = "com_googlesource_chromium_zlib", build_file = "@v8//:bazel/BUILD.zlib", @@ -148,13 +158,19 @@ def proxy_wasm_cpp_host_repositories(): shallow_since = "1638492135 -0800", ) - http_archive( - name = "rules_python", - sha256 = "cd6730ed53a002c56ce4e2f396ba3b3be262fd7cb68339f0377a45e8227fe332", - url = "https://github.com/bazelbuild/rules_python/releases/download/0.5.0/rules_python-0.5.0.tar.gz", + native.bind( + name = "zlib", + actual = "@com_googlesource_chromium_zlib//:zlib", ) native.bind( - name = "wee8", - actual = "@v8//:wee8", + name = "zlib_compression_utils", + actual = "@com_googlesource_chromium_zlib//:zlib_compression_utils", + ) + + http_archive( + name = "rules_python", + sha256 = "a30abdfc7126d497a7698c29c46ea9901c6392d6ed315171a6df5ce433aa4502", + strip_prefix = "rules_python-0.6.0", + url = "https://github.com/bazelbuild/rules_python/archive/0.6.0.tar.gz", )