Update build_bazel_rules_nodejs to fix closure compiles (#912)

* Update build_bazel_rules_nodejs to fix closure compiles

* Fix spacing in update_bazel_workspace.sh script

* space
This commit is contained in:
Kevin Lubick
2021-10-19 17:44:48 -04:00
committed by GitHub
parent f8615b4782
commit 40882443a1
3 changed files with 33 additions and 10 deletions

View File

@@ -6,6 +6,6 @@ def deps():
if "build_bazel_rules_nodejs" not in excludes:
http_archive(
name = "build_bazel_rules_nodejs",
sha256 = "0f2de53628e848c1691e5729b515022f5a77369c76a09fbe55611e12731c90e3",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/2.0.1/rules_nodejs-2.0.1.tar.gz"],
sha256 = "4501158976b9da216295ac65d872b1be51e3eeb805273e68c516d2eb36ae1fbb",
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.4.1/rules_nodejs-4.4.1.tar.gz"],
)

View File

@@ -10,16 +10,37 @@ wasm_cc_binary(
cc_target = ":hello-world",
)
BASE_LINKOPTS = [
"--bind", # Enable embind
"-sMODULARIZE",
]
RELEASE_OPTS = [
"--closure 1", # Run the closure compiler
]
DEBUG_OPTS = [
"--closure 0", # Do not use closure
]
config_setting(
name = "release_opts",
values = {"compilation_mode": "opt"},
)
config_setting(
name = "debug_opts",
values = {"compilation_mode": "dbg"},
)
cc_binary(
name = "hello-embind",
srcs = ["hello-embind.cc"],
# It's probably a good idea to use select() and config_setting
# to add different linkopts to BASE_LINKOPTS depending on things
# like a "opt" or "dbg" compilation mode.
linkopts = [
"--bind", # Enable embind
"-sMODULARIZE",
],
linkopts = select({
":debug_opts": BASE_LINKOPTS + DEBUG_OPTS,
":release_opts": BASE_LINKOPTS + RELEASE_OPTS,
"//conditions:default": BASE_LINKOPTS + RELEASE_OPTS,
}),
# This target won't build successfully on its own because of missing emscripten
# headers etc. Therefore, we hide it from wildcards.
tags = ["manual"],

View File

@@ -26,4 +26,6 @@ bazel build //hello-world:hello-world-wasm-simd
cd test_external
bazel build //:hello-world-wasm
bazel build //:hello-embind-wasm
bazel build //:hello-embind-wasm --compilation_mode dbg # debug
# Test use of the closure compiler
bazel build //:hello-embind-wasm --compilation_mode opt # release