Loading rust/compiler.go +4 −0 Original line number Diff line number Diff line Loading @@ -449,6 +449,10 @@ func (compiler *baseCompiler) relativeInstallPath() string { // Returns the Path for the main source file along with Paths for generated source files from modules listed in srcs. func srcPathFromModuleSrcs(ctx ModuleContext, srcs []string) (android.Path, android.Paths) { if len(srcs) == 0 { ctx.PropertyErrorf("srcs", "srcs must not be empty") } // The srcs can contain strings with prefix ":". // They are dependent modules of this module, with android.SourceDepTag. // They are not the main source file compiled by rustc. Loading rust/compiler_test.go +35 −0 Original line number Diff line number Diff line Loading @@ -98,6 +98,41 @@ func TestEnforceSingleSourceFile(t *testing.T) { }`) } // Test that we reject _no_ source files. func TestEnforceMissingSourceFiles(t *testing.T) { singleSrcError := "srcs must not be empty" // Test libraries testRustError(t, singleSrcError, ` rust_library_host { name: "foo-bar-library", crate_name: "foo", }`) // Test binaries testRustError(t, singleSrcError, ` rust_binary_host { name: "foo-bar-binary", crate_name: "foo", }`) // Test proc_macros testRustError(t, singleSrcError, ` rust_proc_macro { name: "foo-bar-proc-macro", crate_name: "foo", }`) // Test prebuilts testRustError(t, singleSrcError, ` rust_prebuilt_dylib { name: "foo-bar-prebuilt", crate_name: "foo", host_supported: true, }`) } // Test environment vars for Cargo compat are set. func TestCargoCompat(t *testing.T) { ctx := testRust(t, ` Loading Loading
rust/compiler.go +4 −0 Original line number Diff line number Diff line Loading @@ -449,6 +449,10 @@ func (compiler *baseCompiler) relativeInstallPath() string { // Returns the Path for the main source file along with Paths for generated source files from modules listed in srcs. func srcPathFromModuleSrcs(ctx ModuleContext, srcs []string) (android.Path, android.Paths) { if len(srcs) == 0 { ctx.PropertyErrorf("srcs", "srcs must not be empty") } // The srcs can contain strings with prefix ":". // They are dependent modules of this module, with android.SourceDepTag. // They are not the main source file compiled by rustc. Loading
rust/compiler_test.go +35 −0 Original line number Diff line number Diff line Loading @@ -98,6 +98,41 @@ func TestEnforceSingleSourceFile(t *testing.T) { }`) } // Test that we reject _no_ source files. func TestEnforceMissingSourceFiles(t *testing.T) { singleSrcError := "srcs must not be empty" // Test libraries testRustError(t, singleSrcError, ` rust_library_host { name: "foo-bar-library", crate_name: "foo", }`) // Test binaries testRustError(t, singleSrcError, ` rust_binary_host { name: "foo-bar-binary", crate_name: "foo", }`) // Test proc_macros testRustError(t, singleSrcError, ` rust_proc_macro { name: "foo-bar-proc-macro", crate_name: "foo", }`) // Test prebuilts testRustError(t, singleSrcError, ` rust_prebuilt_dylib { name: "foo-bar-prebuilt", crate_name: "foo", host_supported: true, }`) } // Test environment vars for Cargo compat are set. func TestCargoCompat(t *testing.T) { ctx := testRust(t, ` Loading