# @generated by `cargo buckal`
load("@buckal//:cargo_manifest.bzl", "cargo_manifest")
load("@buckal//:wrapper.bzl", "buildscript_run", "rust_binary", "rust_library")
filegroup(
name = "libvault-vendor",
srcs = glob(["**/**"]),
out = "vendor",
)
cargo_manifest(
name = "libvault-manifest",
vendor = ":libvault-vendor",
)
rust_library(
name = "libvault",
srcs = [":libvault-vendor"],
crate = "libvault",
crate_root = "vendor/src/lib.rs",
edition = "2024",
env = {
"OUT_DIR": "$(location :libvault-build-script-run[out_dir])",
},
features = [
"crypto_adaptor_openssl",
"default",
"etcd-client",
"storage_xline",
],
rustc_flags = [
"@$(location :libvault-build-script-run[rustc_flags])",
"@$(location :libvault-manifest[env_flags])",
],
named_deps = {
"hcl": "//third-party/rust/crates/hcl-rs/0.18.7:hcl-rs",
"webpki": "//third-party/rust/crates/rustls-webpki/0.103.9:rustls-webpki",
},
os_deps = {
"linux": ["//third-party/rust/crates/daemonize/0.5.0:daemonize"],
"macos": ["//third-party/rust/crates/daemonize/0.5.0:daemonize"],
},
visibility = ["PUBLIC"],
deps = [
"//third-party/rust/crates/anyhow/1.0.101:anyhow",
"//third-party/rust/crates/arc-swap/1.8.2:arc-swap",
"//third-party/rust/crates/as-any/0.3.2:as-any",
"//third-party/rust/crates/async-trait/0.1.89:async-trait",
"//third-party/rust/crates/base64/0.22.1:base64",
"//third-party/rust/crates/bcrypt/0.17.1:bcrypt",
"//third-party/rust/crates/better_default/1.0.5:better_default",
"//third-party/rust/crates/blake2b_simd/1.0.4:blake2b_simd",
"//third-party/rust/crates/blake3/1.8.3:blake3",
"//third-party/rust/crates/builder-pattern/0.4.2:builder-pattern",
"//third-party/rust/crates/chrono/0.4.43:chrono",
"//third-party/rust/crates/crossbeam-channel/0.5.15:crossbeam-channel",
"//third-party/rust/crates/dashmap/6.1.0:dashmap",
"//third-party/rust/crates/derivative/2.2.0:derivative",
"//third-party/rust/crates/derive_more/0.99.20:derive_more",
"//third-party/rust/crates/enum-map/2.7.3:enum-map",
"//third-party/rust/crates/etcd-client/0.17.0:etcd-client",
"//third-party/rust/crates/foreign-types/0.3.2:foreign-types",
"//third-party/rust/crates/glob/0.3.3:glob",
"//third-party/rust/crates/go-defer/0.1.0:go-defer",
"//third-party/rust/crates/hex/0.4.3:hex",
"//third-party/rust/crates/humantime/2.3.0:humantime",
"//third-party/rust/crates/ipnetwork/0.17.0:ipnetwork",
"//third-party/rust/crates/itertools/0.14.0:itertools",
"//third-party/rust/crates/lazy_static/1.5.0:lazy_static",
"//third-party/rust/crates/libc/0.2.182:libc",
"//third-party/rust/crates/lockfile/0.4.0:lockfile",
"//third-party/rust/crates/log/0.4.29:log",
"//third-party/rust/crates/openssl-sys/0.9.111:openssl-sys",
"//third-party/rust/crates/openssl/0.10.75:openssl",
"//third-party/rust/crates/pem/3.0.6:pem",
"//third-party/rust/crates/pgp/0.19.0:pgp",
"//third-party/rust/crates/priority-queue/2.7.0:priority-queue",
"//third-party/rust/crates/qlean/0.2.3:qlean",
"//third-party/rust/crates/radix_trie/0.2.1:radix_trie",
"//third-party/rust/crates/rand/0.9.2:rand",
"//third-party/rust/crates/rand_chacha/0.3.1:rand_chacha",
"//third-party/rust/crates/regex/1.12.3:regex",
"//third-party/rust/crates/reqwest/0.12.28:reqwest",
"//third-party/rust/crates/rustls-pemfile/2.2.0:rustls-pemfile",
"//third-party/rust/crates/rustls/0.23.36:rustls",
"//third-party/rust/crates/serde/1.0.228:serde",
"//third-party/rust/crates/serde_bytes/0.11.19:serde_bytes",
"//third-party/rust/crates/serde_derive/1.0.228:serde_derive",
"//third-party/rust/crates/serde_json/1.0.149:serde_json",
"//third-party/rust/crates/serde_yaml/0.9.34+deprecated:serde_yaml",
"//third-party/rust/crates/smallvec/1.15.1:smallvec",
"//third-party/rust/crates/ssh-key/0.6.7:ssh-key",
"//third-party/rust/crates/stretto/0.8.4:stretto",
"//third-party/rust/crates/strum/0.25.0:strum",
"//third-party/rust/crates/strum_macros/0.25.3:strum_macros",
"//third-party/rust/crates/tempfile/3.25.0:tempfile",
"//third-party/rust/crates/thiserror/2.0.18:thiserror",
"//third-party/rust/crates/tokio/1.49.0:tokio",
"//third-party/rust/crates/tonic/0.14.4:tonic",
"//third-party/rust/crates/tracing/0.1.44:tracing",
"//third-party/rust/crates/ureq/2.12.1:ureq",
"//third-party/rust/crates/url/2.5.8:url",
"//third-party/rust/crates/webpki-roots/0.26.11:webpki-roots",
"//third-party/rust/crates/x509-parser/0.18.1:x509-parser",
"//third-party/rust/crates/zeroize/1.8.2:zeroize",
],
)
rust_binary(
name = "libvault-build-script-build",
srcs = [":libvault-vendor"],
crate = "build_script_build",
crate_root = "vendor/build.rs",
edition = "2024",
features = [
"crypto_adaptor_openssl",
"default",
"etcd-client",
"storage_xline",
],
rustc_flags = ["@$(location :libvault-manifest[env_flags])"],
visibility = [],
deps = ["//third-party/rust/crates/toml/0.8.23:toml"],
)
buildscript_run(
name = "libvault-build-script-run",
package_name = "libvault",
buildscript_rule = ":libvault-build-script-build",
env_srcs = [
"//third-party/rust/crates/openssl-sys/0.9.111:openssl-sys-build-script-main-run[metadata]",
":libvault-manifest[env_dict]",
],
features = [
"crypto_adaptor_openssl",
"default",
"etcd-client",
"storage_xline",
],
version = "0.1.0",
manifest_dir = ":libvault-vendor",
visibility = ["PUBLIC"],
)