summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Millan <rmh@aybabtu.com>2008-11-11 23:36:12 +0000
committerJordan Crouse <jordan.crouse@amd.com>2008-11-11 23:36:12 +0000
commit39ebf2f06855343793fa5635d2c7b26ee2f1a7b8 (patch)
tree5618e4237cef3364c6bb9f20ebd1a488e286e02f
parent3bb2628c7b36d0b6cb21bc36ea1103ce812666f9 (diff)
Signed-off-by: Robert Millan <rmh@aybabtu.com>
Acked-by: Jordan Crouse <jordan@cosmicpenguin.net> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3748 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
-rwxr-xr-xpayloads/libpayload/bin/lpgcc9
1 files changed, 7 insertions, 2 deletions
diff --git a/payloads/libpayload/bin/lpgcc b/payloads/libpayload/bin/lpgcc
index da8b481155..691ec15f43 100755
--- a/payloads/libpayload/bin/lpgcc
+++ b/payloads/libpayload/bin/lpgcc
@@ -101,8 +101,13 @@ if [ $DOLINK -eq 0 ]; then
else
_LIBGCC=`$DEFAULT_CC -m32 -print-libgcc-file-name`
if [ $DEBUGME -eq 1 ]; then
- echo "$DEFAULT_CC $_CFLAGS $_LDFLAGS $CMDLINE $_LIBDIR/i386/head.o $_LIBDIR/libpayload.a $_LIBGCC"
+ echo "$DEFAULT_CC $_CFLAGS $_LDFLAGS $_LIBDIR/i386/head.o $CMDLINE $_LIBDIR/libpayload.a $_LIBGCC"
fi
- $DEFAULT_CC $_CFLAGS $_LDFLAGS $CMDLINE $_LIBDIR/i386/head.o $_LIBDIR/libpayload.a $_LIBGCC
+ # Note: i386/head.o must be the first object being linked, because it
+ # contains a Multiboot header. The Multiboot standard requires this
+ # header to be placed below 0x2000 in the resulting image. See:
+ # http://www.gnu.org/software/grub/manual/multiboot/html_node/OS-image-format.html
+
+ $DEFAULT_CC $_CFLAGS $_LDFLAGS $_LIBDIR/i386/head.o $CMDLINE $_LIBDIR/libpayload.a $_LIBGCC
fi