]> git.proxmox.com Git - efi-boot-shim.git/blob - elf_arm_efi.lds
Force usage of newest revocations at build time
[efi-boot-shim.git] / elf_arm_efi.lds
1 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
2 OUTPUT_ARCH(arm)
3 ENTRY(_start)
4 SECTIONS
5 {
6 .text 0x0 : {
7 _text = .;
8 *(.text.head)
9 *(.text)
10 *(.text.*)
11 *(.gnu.linkonce.t.*)
12 _evtext = .;
13 . = ALIGN(4096);
14 }
15 _etext = .;
16 _text_size = . - _text;
17 _text_vsize = _evtext - _text;
18
19 . = ALIGN(4096);
20 .data :
21 {
22 _data = .;
23 *(.sdata)
24 *(.data)
25 *(.data1)
26 *(.data.*)
27 *(.got.plt)
28 *(.got)
29
30 *(.dynamic)
31
32 /* the EFI loader doesn't seem to like a .bss section, so we stick
33 it all into .data: */
34 . = ALIGN(16);
35 _bss = .;
36 *(.sbss)
37 *(.scommon)
38 *(.dynbss)
39 *(.bss)
40 *(COMMON)
41 _evdata = .;
42 . = ALIGN(4096);
43 _bss_end = .;
44 }
45 _edata = .;
46 _data_vsize = _evdata - _data;
47 _data_size = . - _data;
48
49 /*
50 * Note that _sbat must be the beginning of the data, and _esbat must be the
51 * end and must be before any section padding. The sbat self-check uses
52 * _esbat to find the bounds of the data, and if the padding is included, the
53 * CSV parser (correctly) rejects the data as having NUL values in one of the
54 * required columns.
55 */
56 . = ALIGN(4096);
57 .sbat :
58 {
59 _sbat = .;
60 *(.sbat)
61 *(.sbat.*)
62 _esbat = .;
63 . = ALIGN(4096);
64 _epsbat = .;
65 }
66 _sbat_size = _epsbat - _sbat;
67 _sbat_vsize = _esbat - _sbat;
68
69 . = ALIGN(4096);
70 .rodata :
71 {
72 _rodata = .;
73 *(.rodata*)
74 *(.srodata)
75 . = ALIGN(16);
76 *(.note.gnu.build-id)
77 . = ALIGN(4096);
78 *(.vendor_cert)
79 *(.data.ident)
80 . = ALIGN(4096);
81 }
82 . = ALIGN(4096);
83 .rela :
84 {
85 *(.rela.dyn)
86 *(.rela.plt)
87 *(.rela.got)
88 *(.rela.data)
89 *(.rela.data*)
90 }
91 . = ALIGN(4096);
92 .dyn :
93 {
94 *(.dynsym)
95 *(.dynstr)
96 _evrodata = .;
97 . = ALIGN(4096);
98 }
99 _erodata = .;
100 _rodata_size = . - _rodata;
101 _rodata_vsize = _evrodata - _rodata;
102 _alldata_size = . - _data;
103
104 /DISCARD/ :
105 {
106 *(.rel.reloc)
107 *(.eh_frame)
108 *(.note.GNU-stack)
109 }
110 .comment 0 : { *(.comment) }
111 }