blob: 6bea51d09b8df11d091f40424d0b705d43b2ecbb [file] [log] [blame]
# Copyright 2022 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/rust/rust_target.gni")
# Defines a shared_library containing just Rust code. Has the same variables
# available as a rust_static_library. See rust_static_library.gni for
# documentation.
template("rust_shared_library") {
exclude_forwards = TESTONLY_AND_VISIBILITY + [ "configs" ]
rust_target(target_name) {
forward_variables_from(invoker, "*", exclude_forwards)
forward_variables_from(invoker, TESTONLY_AND_VISIBILITY)
if (defined(invoker.configs)) {
library_configs = []
library_configs = invoker.configs
}
target_type = "shared_library"
crate_type = "cdylib"
}
}
set_defaults("rust_shared_library") {
configs = default_shared_library_configs
}