summaryrefslogtreecommitdiff
path: root/linker.lds
diff options
context:
space:
mode:
Diffstat (limited to 'linker.lds')
-rw-r--r--linker.lds37
1 files changed, 37 insertions, 0 deletions
diff --git a/linker.lds b/linker.lds
new file mode 100644
index 0000000..d01b37a
--- /dev/null
+++ b/linker.lds
@@ -0,0 +1,37 @@
+OUTPUT_FORMAT(elf64-x86-64)
+PHDRS
+{
+ limine_requests PT_LOAD;
+ text PT_LOAD;
+ rodata PT_LOAD;
+ data PT_LOAD;
+}
+SECTIONS
+{
+ . = 0xFFFFFFFF80000000;
+ .limine_requests : {
+ KEEP(*(.limine_requests_start))
+ KEEP(*(.limine_requests))
+ KEEP(*(.limine_requests_end))
+ } :limine_requests
+
+ . = ALIGN(CONSTANT(MAXPAGESIZE));
+ .text : {
+ *(.text .text.*)
+ } :text
+
+ . = ALIGN(CONSTANT(MAXPAGESIZE));
+ .rodata : {
+ *(.rodata .rodata.*)
+ } :rodata
+
+ . = ALIGN(CONSTANT(MAXPAGESIZE));
+ .data : {
+ *(.data .data.*)
+ } :data
+
+ .bss : {
+ *(.bss .bss.*)
+ *(COMMON)
+ } :data
+}