platform_build_soong/rust/Android.bp
Ivan Lozano 1921e8003d Rust cdylib/statliclib support for vendor snapshot.
Adds support for platform vendor_available Rust FFI libraries and
binaries to be included in the vendor snapshot.

Because rlib and dylibs are not yet in snapshots, libstd cannot be
included in a vendor snapshot. As a result, vendor-specific Rust code
can't be guaranteed to work with the platform-provided vendor_available
modules built with a newer toolchain. For now, a check is added
indicating vendor-specific Rust code is unsupported.

This changes the linkage for vendor variants of these modules to default
to rlib linkage since dylibs cannot be included in the snapshot yet.

Bug: 184042776
Test: m nothing # new Soong tests pass
Change-Id: I502eaa4bb962eb87ff868fcf49b435f0d2f982e6
2021-06-03 08:32:05 -04:00

59 lines
1.3 KiB
Text

package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
bootstrap_go_package {
name: "soong-rust",
pkgPath: "android/soong/rust",
deps: [
"soong",
"soong-android",
"soong-bloaty",
"soong-cc",
"soong-rust-config",
],
srcs: [
"androidmk.go",
"benchmark.go",
"binary.go",
"bindgen.go",
"builder.go",
"clippy.go",
"compiler.go",
"coverage.go",
"doc.go",
"fuzz.go",
"image.go",
"library.go",
"prebuilt.go",
"proc_macro.go",
"project_json.go",
"protobuf.go",
"rust.go",
"sanitize.go",
"source_provider.go",
"snapshot_utils.go",
"strip.go",
"test.go",
"testing.go",
],
testSrcs: [
"benchmark_test.go",
"binary_test.go",
"bindgen_test.go",
"builder_test.go",
"clippy_test.go",
"compiler_test.go",
"coverage_test.go",
"fuzz_test.go",
"image_test.go",
"library_test.go",
"project_json_test.go",
"protobuf_test.go",
"rust_test.go",
"source_provider_test.go",
"test_test.go",
"vendor_snapshot_test.go",
],
pluginFor: ["soong_build"],
}