summaryrefslogtreecommitdiff
path: root/chromium/build/rust/rust_shared_library.gni
blob: 647e6ff98b36dbebb3fd0bfbd16f374cccdffe8e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Copyright 2022 The Chromium Authors. All rights reserved.
# 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
}