blob: 7f60742c9b28fb1d5b6b10b6b0c91f414a1a6fc8 [file] [log] [blame]
# Copyright 2024 The Fuchsia Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/components/fuchsia_unittest_package.gni")
import("//build/rust/rustc_library.gni")
import("//build/toolchain/ifs_shared_library.gni")
group("tee_internal_api") {
public_deps = [
":headers",
":lib",
]
}
config("config") {
include_dirs = [ "include" ]
}
source_set("headers") {
public = [
"include/lib/tee_internal_api/tee_internal_api.h",
"include/lib/tee_internal_api/tee_internal_api_types.h",
]
public_configs = [ ":config" ]
}
ifs_shared_library("lib") {
abi = "libtee_internal.ifs"
}
rustc_library("tee_internal") {
edition = "2021"
sources = [
"src/binding.rs",
"src/lib.rs",
]
configs -= [ "//build/config/rust/lints:allow_unused_results" ]
}
# Trusted Applications link against an ifs specification that says that
# "libtee_internal.so" exports the TEE_ entry points. They actually are exported
# by the ta_runtime binary, but TAs will have "libtee_internal.so" in their
# DT_NEEDED list. This is an empty stub library that satisfies this requirement
# at TA load time.
shared_library("tee_internal_stub_so") {
output_name = "tee_internal"
}
group("tests") {
testonly = true
deps = [ "tests" ]
}