Source code

Revision control

Copy as Markdown

Other Tools

# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//chromium/build/rust/rust_bindgen.gni")
import("//chromium/build/rust/rust_executable.gni")
import("//chromium/build/rust/rust_static_library.gni")
source_set("c_lib_headers") {
sources = [ "lib.h" ]
}
component("c_lib") {
sources = [ "lib.c" ]
deps = [ ":c_lib_headers" ]
defines = [ "COMPONENT_IMPLEMENTATION" ]
}
rust_bindgen("c_lib_bindgen") {
header = "lib.h"
deps = [ ":c_lib_headers" ]
wrap_static_fns = true
}
rust_static_library("bindgen_static_fns_test_lib") {
allow_unsafe = true
deps = [
":c_lib",
":c_lib_bindgen",
]
sources = [ "src/lib.rs" ]
build_native_rust_unit_tests = true
crate_root = "src/lib.rs"
}
rust_executable("bindgen_static_fns_test") {
deps = [ ":bindgen_static_fns_test_lib" ]
sources = [ "main.rs" ]
crate_root = "main.rs"
}