rust: Privatize Cargo* methods on compiler
These methods aren't used outside, and probably shouldn't be. Bug: 309943184 Test: m nothing Change-Id: Ia7dd5220ccd10c0136aa16f5e21149eaf7a03ea1
This commit is contained in:
@@ -196,7 +196,7 @@ func rustEnvVars(ctx ModuleContext, deps PathDeps) []string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if len(deps.SrcDeps) > 0 {
|
if len(deps.SrcDeps) > 0 {
|
||||||
moduleGenDir := ctx.RustModule().compiler.CargoOutDir()
|
moduleGenDir := ctx.RustModule().compiler.cargoOutDir()
|
||||||
// We must calculate an absolute path for OUT_DIR since Rust's include! macro (which normally consumes this)
|
// We must calculate an absolute path for OUT_DIR since Rust's include! macro (which normally consumes this)
|
||||||
// assumes that paths are relative to the source file.
|
// assumes that paths are relative to the source file.
|
||||||
var outDirPrefix string
|
var outDirPrefix string
|
||||||
@@ -215,13 +215,13 @@ func rustEnvVars(ctx ModuleContext, deps PathDeps) []string {
|
|||||||
|
|
||||||
envVars = append(envVars, "ANDROID_RUST_VERSION="+config.GetRustVersion(ctx))
|
envVars = append(envVars, "ANDROID_RUST_VERSION="+config.GetRustVersion(ctx))
|
||||||
|
|
||||||
if ctx.RustModule().compiler.CargoEnvCompat() {
|
if ctx.RustModule().compiler.cargoEnvCompat() {
|
||||||
if bin, ok := ctx.RustModule().compiler.(*binaryDecorator); ok {
|
if bin, ok := ctx.RustModule().compiler.(*binaryDecorator); ok {
|
||||||
envVars = append(envVars, "CARGO_BIN_NAME="+bin.getStem(ctx))
|
envVars = append(envVars, "CARGO_BIN_NAME="+bin.getStem(ctx))
|
||||||
}
|
}
|
||||||
envVars = append(envVars, "CARGO_CRATE_NAME="+ctx.RustModule().CrateName())
|
envVars = append(envVars, "CARGO_CRATE_NAME="+ctx.RustModule().CrateName())
|
||||||
envVars = append(envVars, "CARGO_PKG_NAME="+ctx.RustModule().CrateName())
|
envVars = append(envVars, "CARGO_PKG_NAME="+ctx.RustModule().CrateName())
|
||||||
pkgVersion := ctx.RustModule().compiler.CargoPkgVersion()
|
pkgVersion := ctx.RustModule().compiler.cargoPkgVersion()
|
||||||
if pkgVersion != "" {
|
if pkgVersion != "" {
|
||||||
envVars = append(envVars, "CARGO_PKG_VERSION="+pkgVersion)
|
envVars = append(envVars, "CARGO_PKG_VERSION="+pkgVersion)
|
||||||
|
|
||||||
@@ -327,7 +327,7 @@ func transformSrctoCrate(ctx ModuleContext, main android.Path, deps PathDeps, fl
|
|||||||
orderOnly = append(orderOnly, deps.SharedLibs...)
|
orderOnly = append(orderOnly, deps.SharedLibs...)
|
||||||
|
|
||||||
if len(deps.SrcDeps) > 0 {
|
if len(deps.SrcDeps) > 0 {
|
||||||
moduleGenDir := ctx.RustModule().compiler.CargoOutDir()
|
moduleGenDir := ctx.RustModule().compiler.cargoOutDir()
|
||||||
var outputs android.WritablePaths
|
var outputs android.WritablePaths
|
||||||
|
|
||||||
for _, genSrc := range deps.SrcDeps {
|
for _, genSrc := range deps.SrcDeps {
|
||||||
|
@@ -47,13 +47,13 @@ type compiler interface {
|
|||||||
|
|
||||||
// Output directory in which source-generated code from dependencies is
|
// Output directory in which source-generated code from dependencies is
|
||||||
// copied. This is equivalent to Cargo's OUT_DIR variable.
|
// copied. This is equivalent to Cargo's OUT_DIR variable.
|
||||||
CargoOutDir() android.OptionalPath
|
cargoOutDir() android.OptionalPath
|
||||||
|
|
||||||
// CargoPkgVersion returns the value of the Cargo_pkg_version property.
|
// cargoPkgVersion returns the value of the Cargo_pkg_version property.
|
||||||
CargoPkgVersion() string
|
cargoPkgVersion() string
|
||||||
|
|
||||||
// CargoEnvCompat returns whether Cargo environment variables should be used.
|
// cargoEnvCompat returns whether Cargo environment variables should be used.
|
||||||
CargoEnvCompat() bool
|
cargoEnvCompat() bool
|
||||||
|
|
||||||
inData() bool
|
inData() bool
|
||||||
install(ctx ModuleContext)
|
install(ctx ModuleContext)
|
||||||
@@ -242,7 +242,10 @@ type baseCompiler struct {
|
|||||||
|
|
||||||
// If a crate has a source-generated dependency, a copy of the source file
|
// If a crate has a source-generated dependency, a copy of the source file
|
||||||
// will be available in cargoOutDir (equivalent to Cargo OUT_DIR).
|
// will be available in cargoOutDir (equivalent to Cargo OUT_DIR).
|
||||||
cargoOutDir android.ModuleOutPath
|
// This is stored internally because it may not be available during
|
||||||
|
// singleton-generation passes like rustdoc/rust_project.json, but should
|
||||||
|
// be stashed during initial generation.
|
||||||
|
cachedCargoOutDir android.ModuleOutPath
|
||||||
}
|
}
|
||||||
|
|
||||||
func (compiler *baseCompiler) Disabled() bool {
|
func (compiler *baseCompiler) Disabled() bool {
|
||||||
@@ -393,18 +396,18 @@ func (compiler *baseCompiler) rustdoc(ctx ModuleContext, flags Flags,
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (compiler *baseCompiler) initialize(ctx ModuleContext) {
|
func (compiler *baseCompiler) initialize(ctx ModuleContext) {
|
||||||
compiler.cargoOutDir = android.PathForModuleOut(ctx, genSubDir)
|
compiler.cachedCargoOutDir = android.PathForModuleOut(ctx, genSubDir)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (compiler *baseCompiler) CargoOutDir() android.OptionalPath {
|
func (compiler *baseCompiler) cargoOutDir() android.OptionalPath {
|
||||||
return android.OptionalPathForPath(compiler.cargoOutDir)
|
return android.OptionalPathForPath(compiler.cachedCargoOutDir)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (compiler *baseCompiler) CargoEnvCompat() bool {
|
func (compiler *baseCompiler) cargoEnvCompat() bool {
|
||||||
return Bool(compiler.Properties.Cargo_env_compat)
|
return Bool(compiler.Properties.Cargo_env_compat)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (compiler *baseCompiler) CargoPkgVersion() string {
|
func (compiler *baseCompiler) cargoPkgVersion() string {
|
||||||
return String(compiler.Properties.Cargo_pkg_version)
|
return String(compiler.Properties.Cargo_pkg_version)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -241,8 +241,8 @@ func (singleton *projectGeneratorSingleton) addCrate(ctx android.SingletonContex
|
|||||||
ProcMacro: procMacro,
|
ProcMacro: procMacro,
|
||||||
}
|
}
|
||||||
|
|
||||||
if comp.CargoOutDir().Valid() {
|
if comp.cargoOutDir().Valid() {
|
||||||
crate.Env["OUT_DIR"] = comp.CargoOutDir().String()
|
crate.Env["OUT_DIR"] = comp.cargoOutDir().String()
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, feature := range comp.Properties.Features {
|
for _, feature := range comp.Properties.Features {
|
||||||
|
Reference in New Issue
Block a user