| # Copyright 2024 Google LLC | |
| # | |
| # Use of this source code is governed by a BSD-style | |
| # license that can be found in the LICENSE file or at | |
| # https://developers.google.com/open-source/licenses/bsd | |
| load("@rules_pkg//pkg:mappings.bzl", "pkg_files", "strip_prefix") | |
| load("@rules_rust//rust:defs.bzl", "rust_library", "rust_test") | |
| package(default_applicable_licenses = ["//:license"]) | |
| rust_library( | |
| name = "upb", | |
| srcs = [ | |
| "arena.rs", | |
| "associated_mini_table.rs", | |
| "lib.rs", | |
| "message.rs", | |
| "owned_arena_box.rs", | |
| "text.rs", | |
| "wire.rs", | |
| ], | |
| proc_macro_deps = [ | |
| "@crate_index//:paste", | |
| ], | |
| rustc_flags = ["--cfg=bzl"], | |
| visibility = [ | |
| "//rust:__subpackages__", | |
| "//src/google/protobuf:__subpackages__", | |
| ], | |
| deps = [ | |
| "//rust/upb/sys", | |
| ], | |
| ) | |
| rust_test( | |
| name = "upb_rs_crate_test", | |
| crate = ":upb", | |
| rustc_flags = ["--cfg=bzl"], | |
| deps = [ | |
| "@crate_index//:googletest", | |
| ], | |
| ) | |
| pkg_files( | |
| name = "src", | |
| srcs = glob(["*"]) + [ | |
| "//rust/upb/sys:srcs", | |
| ], | |
| prefix = "upb", | |
| strip_prefix = strip_prefix.from_root("rust/upb"), | |
| visibility = [ | |
| "//rust:__subpackages__", | |
| "//src/google/protobuf:__subpackages__", | |
| ], | |
| ) |