From 79c3b77ea2e8c875eb9a9e93053b5d351922561e Mon Sep 17 00:00:00 2001 From: Andrew Walbran Date: Tue, 24 May 2022 13:52:58 +0000 Subject: [PATCH] raw_binary output should not be executable. If it is, rust_test (wrongly) tries to execute it when it is used as data. Also fixed description and a lint warning while I was at it. Bug: 233732515 Test: atest vmbase_example.integration_test Change-Id: I49bf5147a9908549b0f37bdb0678e77676148db8 --- filesystem/raw_binary.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/filesystem/raw_binary.go b/filesystem/raw_binary.go index f7261240d..1544ea788 100644 --- a/filesystem/raw_binary.go +++ b/filesystem/raw_binary.go @@ -26,7 +26,8 @@ import ( var ( toRawBinary = pctx.AndroidStaticRule("toRawBinary", blueprint.RuleParams{ - Command: "${objcopy} --output-target=binary ${in} ${out}", + Command: "${objcopy} --output-target=binary ${in} ${out} &&" + + "chmod -x ${out}", CommandDeps: []string{"$objcopy"}, }, "objcopy") @@ -76,7 +77,7 @@ func (r *rawBinary) GenerateAndroidBuildActions(ctx android.ModuleContext) { ctx.Build(pctx, android.BuildParams{ Rule: toRawBinary, - Description: "prefix symbols " + outputFile.Base(), + Description: "raw binary " + outputFile.Base(), Output: outputFile, Input: inputFile, Args: map[string]string{ @@ -93,7 +94,7 @@ var _ android.AndroidMkEntriesProvider = (*rawBinary)(nil) // Implements android.AndroidMkEntriesProvider func (r *rawBinary) AndroidMkEntries() []android.AndroidMkEntries { - return []android.AndroidMkEntries{android.AndroidMkEntries{ + return []android.AndroidMkEntries{{ Class: "ETC", OutputFile: android.OptionalPathForPath(r.output), }}