You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/sys-freebsd/boot0/files/boot0-10.1-gcc46.patch

68 lines
2.1 KiB

diff --git a/sys/boot/i386/Makefile.inc b/sys/boot/i386/Makefile.inc
index 472b275..0c9409d 100644
--- a/sys/boot/i386/Makefile.inc
+++ b/sys/boot/i386/Makefile.inc
@@ -13,8 +13,6 @@ LDFLAGS+= -nostdlib
.if ${MACHINE_CPUARCH} == "amd64"
CFLAGS+= -m32
ACFLAGS+= -m32
-# LD_FLAGS is passed directly to ${LD}, not via ${CC}:
-LD_FLAGS+= -m elf_i386_fbsd
AFLAGS+= --32
.endif
diff --git a/sys/boot/i386/boot2/Makefile b/sys/boot/i386/boot2/Makefile
index 428950e..6a15450 100644
--- a/sys/boot/i386/boot2/Makefile
+++ b/sys/boot/i386/boot2/Makefile
@@ -113,3 +113,10 @@ machine:
# XXX: clang integrated-as doesn't grok .codeNN directives yet
CFLAGS.boot1.S= ${CLANG_NO_IAS}
CFLAGS+= ${CFLAGS.${.IMPSRC:T}}
+
+# gcc 4.6 or later version, -fno-asynchronous-unwind-tables is required to build.
+CFLAGS+= -fno-asynchronous-unwind-tables
+
+.if ${MACHINE_CPUARCH} == "amd64"
+LD_FLAGS+= -m elf_i386_fbsd
+.endif
diff --git a/sys/boot/i386/gptboot/Makefile b/sys/boot/i386/gptboot/Makefile
index a90e712..d60ae00 100644
--- a/sys/boot/i386/gptboot/Makefile
+++ b/sys/boot/i386/gptboot/Makefile
@@ -81,3 +81,8 @@ machine:
# XXX: clang integrated-as doesn't grok .codeNN directives yet
CFLAGS.gptldr.S= ${CLANG_NO_IAS}
CFLAGS+= ${CFLAGS.${.IMPSRC:T}}
+
+.if ${MACHINE_CPUARCH} == "amd64"
+LD_FLAGS+= -m elf_i386_fbsd
+.endif
+
diff --git a/sys/boot/i386/gptzfsboot/Makefile b/sys/boot/i386/gptzfsboot/Makefile
index 5eb2383..c10a917 100644
--- a/sys/boot/i386/gptzfsboot/Makefile
+++ b/sys/boot/i386/gptzfsboot/Makefile
@@ -78,3 +78,8 @@ machine:
# XXX: clang integrated-as doesn't grok .codeNN directives yet
CFLAGS.gptldr.S= ${CLANG_NO_IAS}
CFLAGS+= ${CFLAGS.${.IMPSRC:T}}
+
+.if ${MACHINE_CPUARCH} == "amd64"
+LD_FLAGS+= -m elf_i386_fbsd
+.endif
+
diff --git a/sys/boot/i386/zfsboot/Makefile b/sys/boot/i386/zfsboot/Makefile
index 149f43a..be1e46a 100644
--- a/sys/boot/i386/zfsboot/Makefile
+++ b/sys/boot/i386/zfsboot/Makefile
@@ -91,3 +91,8 @@ machine:
# XXX: clang integrated-as doesn't grok .codeNN directives yet
CFLAGS.zfsldr.S= ${CLANG_NO_IAS}
CFLAGS+= ${CFLAGS.${.IMPSRC:T}}
+
+.if ${MACHINE_CPUARCH} == "amd64"
+LD_FLAGS+= -m elf_i386_fbsd
+.endif
+