| load("@rules_rust//rust:defs.bzl", "rust_static_library") |
| load("//bazel:rust_cxx_bridge.bzl", "rust_cxx_bridge") |
| load( |
| "//bazel:skia_rules.bzl", |
| "skia_cc_library", |
| "skia_filegroup", |
| ) |
| |
| package( |
| default_applicable_licenses = ["//:license"], |
| ) |
| |
| licenses(["notice"]) |
| |
| skia_filegroup( |
| name = "rs_srcs", |
| srcs = ["FFI.rs"], |
| ) |
| |
| skia_filegroup( |
| name = "cxx_bridge_srcs", |
| srcs = ["FFI.rs"], |
| ) |
| |
| skia_cc_library( |
| name = "ffi_cpp", |
| hdrs = ["FFI.h"], |
| features = ["layering_check"], |
| visibility = [ |
| "//src/codec:__pkg__", |
| "//src/encode:__pkg__", |
| ], |
| deps = [ |
| "//rust/common:ffi_utils", |
| ], |
| ) |
| |
| rust_cxx_bridge( |
| name = "cxx_bridge", |
| src = "FFI.rs", |
| visibility = [ |
| "//src/codec:__pkg__", |
| "//src/encode:__pkg__", |
| ], |
| deps = [ |
| ":ffi_cpp", |
| "//rust/common:ffi_utils", |
| ], |
| ) |
| |
| rust_static_library( |
| name = "ffi_rs", |
| srcs = [":rs_srcs"], |
| crate_root = "FFI.rs", |
| rustc_flags = ["-Dwarnings"], |
| visibility = [ |
| "//src/codec:__pkg__", |
| "//src/encode:__pkg__", |
| ], |
| deps = [ |
| ":cxx_bridge", |
| "//rust/common:cxx_bridge", |
| "//rust/common:skia_rust_common", |
| "@crates//:cxx", |
| "@crates//:png", |
| ], |
| ) |