summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Colin Cross <ccross@android.com> 2021-06-29 11:28:24 -0700
committer Colin Cross <ccross@android.com> 2021-07-13 13:50:55 -0700
commit1cd80d9b8bbcd48fe0a1df74fbb781067682615e (patch)
tree7fde23906193d1b3d0f75c90f6c04e111e5b92af
parent1c19b81e3d4a482eced000c3aaa67bb325e101a5 (diff)
Use note in linker.s to place linker
Use a note added to linker.s to place the linker in the linker script, which will work musl, which doesn't have .note.android.ident, while continuing to work for linux bionic. Test: m checkbuild Change-Id: I9cd4ad7c8e8fcb4d725746106d5beaa699a77807
-rw-r--r--cmd/extract_linker/main.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/cmd/extract_linker/main.go b/cmd/extract_linker/main.go
index 2dcb8948e..f1f7bc74b 100644
--- a/cmd/extract_linker/main.go
+++ b/cmd/extract_linker/main.go
@@ -85,7 +85,7 @@ func main() {
fmt.Fprintf(asm, ".globl %s\n%s:\n\n", symName, symName)
- fmt.Fprintf(script, " %s %d : {\n", sectionName, baseLoadAddr+prog.Vaddr)
+ fmt.Fprintf(script, " %s 0x%x : {\n", sectionName, baseLoadAddr+prog.Vaddr)
fmt.Fprintf(script, " KEEP(*(%s));\n", sectionName)
fmt.Fprintln(script, " }")
@@ -106,8 +106,10 @@ func main() {
load += 1
}
+ fmt.Fprintln(asm, `.section .note.android.embedded_linker,"a",%note`)
+
fmt.Fprintln(script, "}")
- fmt.Fprintln(script, "INSERT BEFORE .note.android.ident;")
+ fmt.Fprintln(script, "INSERT BEFORE .note.android.embedded_linker;")
if asmPath != "" {
if err := ioutil.WriteFile(asmPath, asm.Bytes(), 0777); err != nil {