# Copyright 2020 The Bazel Authors. All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. load("@rules_rust//rust:defs.bzl", "rust_binary", "rust_shared_library") load("@rules_rust_wasm_bindgen//:defs.bzl", "rust_wasm_bindgen", "rust_wasm_bindgen_test") package(default_visibility = ["//:__subpackages__"]) exports_files([ "hello_world_wasm_test.js", "main.rs", ]) rust_binary( name = "hello_world_bin_wasm", srcs = ["main.rs"], edition = "2018", target_compatible_with = ["@platforms//cpu:wasm32"], deps = [ "@rules_rust_wasm_bindgen//3rdparty:wasm_bindgen", ], ) rust_shared_library( name = "hello_world_lib_wasm", srcs = ["main.rs"], edition = "2018", target_compatible_with = ["@platforms//cpu:wasm32"], deps = [ "@rules_rust_wasm_bindgen//3rdparty:wasm_bindgen", ], ) rust_wasm_bindgen( name = "hello_world_bundler_wasm_bindgen", wasm_file = ":hello_world_bin_wasm", ) rust_wasm_bindgen_test( name = "hello_world_bundler_wasm_bindgen_test", wasm = ":hello_world_bundler_wasm_bindgen", ) rust_wasm_bindgen( name = "hello_world_web_wasm_bindgen", target = "web", wasm_file = ":hello_world_lib_wasm", ) rust_wasm_bindgen_test( name = "hello_world_web_wasm_bindgen_test", wasm = "hello_world_web_wasm_bindgen", ) rust_wasm_bindgen( name = "hello_world_deno_wasm_bindgen", target = "deno", wasm_file = ":hello_world_lib_wasm", ) rust_wasm_bindgen_test( name = "hello_world_deno_wasm_bindgen_test", wasm = "hello_world_deno_wasm_bindgen", ) rust_wasm_bindgen( name = "hello_world_nomodules_wasm_bindgen", target = "no-modules", wasm_file = ":hello_world_lib_wasm", ) rust_wasm_bindgen_test( name = "hello_world_nomodules_wasm_bindgen_test", wasm = "hello_world_nomodules_wasm_bindgen", ) rust_wasm_bindgen( name = "hello_world_nodejs_wasm_bindgen", target = "nodejs", wasm_file = ":hello_world_lib_wasm", ) rust_wasm_bindgen_test( name = "hello_world_nodejs_wasm_bindgen_test", wasm = "hello_world_nodejs_wasm_bindgen", )