diff --git a/interfaces/kits/rust/BUILD.gn b/interfaces/kits/rust/BUILD.gn index 654f0d8c6c2201bc39300a5dddd32528376d8916..afaa3df582d38d2d1ef0974bf6a9463afeec75b3 100644 --- a/interfaces/kits/rust/BUILD.gn +++ b/interfaces/kits/rust/BUILD.gn @@ -24,10 +24,15 @@ ohos_rust_shared_ffi("rust_file") { sources = [ "src/lib.rs" ] crate_name = "rust_file" rustflags = [ "-Zstack-protector=all" ] - external_deps = [ - "hilog:hilog_rust", - "rust_libc:lib", - ] + deps = [] + external_deps = [ "hilog:hilog_rust" ] + + if (defined(global_parts_info) && !defined(global_parts_info.third_party_rust_libc)) { + deps += [ "//third_party/rust/crates/libc:lib" ] + } else { + external_deps += [ "rust_libc:lib" ] + } + innerapi_tags = [ "platformsdk" ] public_configs = [ ":public_config" ] }