Merge changes from topic "revert-2216822-DZNPYURQOE"
* changes: Revert "Drop dependency on musl_linker_script" Revert "Copy cc_object output files to a name that matches the m..."
This commit is contained in:
@@ -109,7 +109,7 @@ var (
|
||||
}, "-l")
|
||||
|
||||
muslCrtBeginStaticBinary, muslCrtEndStaticBinary = []string{"libc_musl_crtbegin_static"}, []string{"libc_musl_crtend"}
|
||||
muslCrtBeginSharedBinary, muslCrtEndSharedBinary = []string{"libc_musl_crtbegin_dynamic"}, []string{"libc_musl_crtend"}
|
||||
muslCrtBeginSharedBinary, muslCrtEndSharedBinary = []string{"libc_musl_crtbegin_dynamic", "musl_linker_script"}, []string{"libc_musl_crtend"}
|
||||
muslCrtBeginSharedLibrary, muslCrtEndSharedLibrary = []string{"libc_musl_crtbegin_so"}, []string{"libc_musl_crtend_so"}
|
||||
|
||||
muslDefaultSharedLibraries = []string{"libc_musl"}
|
||||
|
13
cc/object.go
13
cc/object.go
@@ -256,18 +256,13 @@ func (object *objectLinker) link(ctx ModuleContext,
|
||||
builderFlags := flagsToBuilderFlags(flags)
|
||||
|
||||
if len(objs.objFiles) == 1 && String(object.Properties.Linker_script) == "" {
|
||||
output := android.PathForModuleOut(ctx, ctx.ModuleName()+objectExtension)
|
||||
outputFile = output
|
||||
outputFile = objs.objFiles[0]
|
||||
|
||||
if String(object.Properties.Prefix_symbols) != "" {
|
||||
transformBinaryPrefixSymbols(ctx, String(object.Properties.Prefix_symbols), objs.objFiles[0],
|
||||
output := android.PathForModuleOut(ctx, ctx.ModuleName()+objectExtension)
|
||||
transformBinaryPrefixSymbols(ctx, String(object.Properties.Prefix_symbols), outputFile,
|
||||
builderFlags, output)
|
||||
} else {
|
||||
ctx.Build(pctx, android.BuildParams{
|
||||
Rule: android.Cp,
|
||||
Input: objs.objFiles[0],
|
||||
Output: output,
|
||||
})
|
||||
outputFile = output
|
||||
}
|
||||
} else {
|
||||
output := android.PathForModuleOut(ctx, ctx.ModuleName()+objectExtension)
|
||||
|
@@ -15,7 +15,6 @@
|
||||
package cc
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"android/soong/android"
|
||||
@@ -108,53 +107,3 @@ cc_object {
|
||||
expectedOutputFiles := []string{"outputbase/execroot/__main__/bazel_out.o"}
|
||||
android.AssertDeepEquals(t, "output files", expectedOutputFiles, outputFiles.Strings())
|
||||
}
|
||||
|
||||
func TestCcObjectOutputFile(t *testing.T) {
|
||||
testcases := []struct {
|
||||
name string
|
||||
bp string
|
||||
}{
|
||||
{
|
||||
name: "normal",
|
||||
bp: `
|
||||
srcs: ["bar.c"],
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "keep symbols",
|
||||
bp: `
|
||||
srcs: ["bar.c"],
|
||||
prefix_symbols: "foo_",
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "partial linking",
|
||||
bp: `
|
||||
srcs: ["bar.c", "baz.c"],
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "partial linking and prefix symbols",
|
||||
bp: `
|
||||
srcs: ["bar.c", "baz.c"],
|
||||
prefix_symbols: "foo_",
|
||||
`,
|
||||
},
|
||||
}
|
||||
|
||||
for _, testcase := range testcases {
|
||||
bp := fmt.Sprintf(`
|
||||
cc_object {
|
||||
name: "foo",
|
||||
%s
|
||||
}
|
||||
`, testcase.bp)
|
||||
t.Run(testcase.name, func(t *testing.T) {
|
||||
ctx := PrepareForIntegrationTestWithCc.RunTestWithBp(t, bp)
|
||||
android.AssertPathRelativeToTopEquals(t, "expected output file foo.o",
|
||||
"out/soong/.intermediates/foo/android_arm64_armv8-a/foo.o",
|
||||
ctx.ModuleForTests("foo", "android_arm64_armv8-a").Output("foo.o").Output)
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user