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:
@@ -6,6 +6,6 @@ def deps():
|
|||||||
if "build_bazel_rules_nodejs" not in excludes:
|
if "build_bazel_rules_nodejs" not in excludes:
|
||||||
http_archive(
|
http_archive(
|
||||||
name = "build_bazel_rules_nodejs",
|
name = "build_bazel_rules_nodejs",
|
||||||
sha256 = "0f2de53628e848c1691e5729b515022f5a77369c76a09fbe55611e12731c90e3",
|
sha256 = "4501158976b9da216295ac65d872b1be51e3eeb805273e68c516d2eb36ae1fbb",
|
||||||
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/2.0.1/rules_nodejs-2.0.1.tar.gz"],
|
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/4.4.1/rules_nodejs-4.4.1.tar.gz"],
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -10,16 +10,37 @@ wasm_cc_binary(
|
|||||||
cc_target = ":hello-world",
|
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(
|
cc_binary(
|
||||||
name = "hello-embind",
|
name = "hello-embind",
|
||||||
srcs = ["hello-embind.cc"],
|
srcs = ["hello-embind.cc"],
|
||||||
# It's probably a good idea to use select() and config_setting
|
linkopts = select({
|
||||||
# to add different linkopts to BASE_LINKOPTS depending on things
|
":debug_opts": BASE_LINKOPTS + DEBUG_OPTS,
|
||||||
# like a "opt" or "dbg" compilation mode.
|
":release_opts": BASE_LINKOPTS + RELEASE_OPTS,
|
||||||
linkopts = [
|
"//conditions:default": BASE_LINKOPTS + RELEASE_OPTS,
|
||||||
"--bind", # Enable embind
|
}),
|
||||||
"-sMODULARIZE",
|
|
||||||
],
|
|
||||||
# This target won't build successfully on its own because of missing emscripten
|
# This target won't build successfully on its own because of missing emscripten
|
||||||
# headers etc. Therefore, we hide it from wildcards.
|
# headers etc. Therefore, we hide it from wildcards.
|
||||||
tags = ["manual"],
|
tags = ["manual"],
|
||||||
|
|||||||
@@ -26,4 +26,6 @@ bazel build //hello-world:hello-world-wasm-simd
|
|||||||
|
|
||||||
cd test_external
|
cd test_external
|
||||||
bazel build //:hello-world-wasm
|
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
|
||||||
|
|||||||
Reference in New Issue
Block a user