summaryrefslogtreecommitdiff
path: root/i386
diff options
context:
space:
mode:
Diffstat (limited to 'i386')
-rw-r--r--i386/Makefrag.am5
-rw-r--r--i386/ldscript8
2 files changed, 9 insertions, 4 deletions
diff --git a/i386/Makefrag.am b/i386/Makefrag.am
index f70e63c..7d573db 100644
--- a/i386/Makefrag.am
+++ b/i386/Makefrag.am
@@ -194,8 +194,11 @@ nodist_libkernel_a_SOURCES += \
EXTRA_DIST += \
i386/ldscript
-LINKFLAGS_gnumach = \
+if PLATFORM_at
+gnumach_LINKFLAGS += \
+ --defsym _START=0x100000 \
-T '$(srcdir)'/i386/ldscript
+endif
#
# Installation.
diff --git a/i386/ldscript b/i386/ldscript
index 19a5c76..2195af3 100644
--- a/i386/ldscript
+++ b/i386/ldscript
@@ -47,10 +47,12 @@ SECTIONS
} =0x90909090
.plt : { *(.plt) }
/*
- * _start needs to be at 0x100000, so that's where .text will be begin
- * and .text.start will be first in there. See also i386/i386at/boothdr.S.
+ * There are specific requirements about entry points, so we have it
+ * configurable via `_START': `.text' will begin there and `.text.start' will
+ * be first in there. See also `i386/i386at/boothdr.S' and
+ * `LINKFLAGS_gnumach' in `i386/Makefrag.am'.
*/
- . = 0x100000;
+ . = _START;
.text :
{
*(.text.start)