summaryrefslogtreecommitdiffstats
path: root/sys/conf/Makefile.arm
diff options
context:
space:
mode:
authorcognet <cognet@FreeBSD.org>2005-11-24 02:25:49 +0000
committercognet <cognet@FreeBSD.org>2005-11-24 02:25:49 +0000
commit2a2203ec202a935c64457164772bd84ca2d2814c (patch)
treef351d6a80ed4b7eb82e302cfe7c9cbd9b0d42f8b /sys/conf/Makefile.arm
parentcaae9bf0814e6d393e79b98b8b66b456cf281a12 (diff)
downloadFreeBSD-src-2a2203ec202a935c64457164772bd84ca2d2814c.zip
FreeBSD-src-2a2203ec202a935c64457164772bd84ca2d2814c.tar.gz
Create a non-elf pure binary version of the kernel as well.
Diffstat (limited to 'sys/conf/Makefile.arm')
-rw-r--r--sys/conf/Makefile.arm20
1 files changed, 19 insertions, 1 deletions
diff --git a/sys/conf/Makefile.arm b/sys/conf/Makefile.arm
index c0e5a12..11495a4 100644
--- a/sys/conf/Makefile.arm
+++ b/sys/conf/Makefile.arm
@@ -48,6 +48,16 @@ CFLAGS += -mno-apcs-frame
DDB_ENABLED!= grep DDB opt_ddb.h || true
+SYSTEM_LD_ = ${LD} -Bdynamic -T ldscript.$M.static \
+ -warn-common -export-dynamic -dynamic-linker /red/herring -o \
+ ${FULLKERNEL}.noheader -X ${SYSTEM_OBJS} vers.o
+SYSTEM_LD_TAIL +=; cat ldscript.$M| \
+ sed s/" + SIZEOF_HEADERS"// \
+ >ldscript.$M.noheader; \
+ ${SYSTEM_LD_}; \
+ ${OBJCOPY} -S -O binary ${FULLKERNEL}.noheader \
+ ${KERNEL_KO}.bin; \
+ rm ${FULLKERNEL}.noheader
.if ${DDB_ENABLED} != ""
SYSTEM_LD_TAIL += ;echo "\#define KERNNAME \"${KERNEL_KO}.tmp\"" \
>opt_kernname.h ;\
@@ -55,9 +65,17 @@ SYSTEM_LD_TAIL += ;echo "\#define KERNNAME \"${KERNEL_KO}.tmp\"" \
-g --strip-symbol '$$t' ${FULLKERNEL} ${KERNEL_KO}.tmp;\
${CC} -O -nostdlib -I. -Xlinker -T -Xlinker ldscript.arm \
$S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S -o ${KERNEL_KO}.tramp;\
- rm ${KERNEL_KO}.tmp
+ ${CC} -O -nostdlib -I. -Xlinker -T -Xlinker ldscript.arm.noheader \
+ $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S -o \
+ ${KERNEL_KO}.tramp.noheader; \
+ ${OBJCOPY} -S -O binary ${KERNEL_KO}.tramp.noheader \
+ ${KERNEL_KO}.tramp.bin; \
+ rm ${KERNEL_KO}.tmp ${KERNEL_KO}.tramp.noheader; \
+
.endif
+CLEANFILES += ldscript.$M ldscript.$M.static ${KERNEL_KO}.bin \
+ ${KERNEL_KO}.tramp ${KERNEL_KO}.tramp.bin
%BEFORE_DEPEND
%OBJS
OpenPOWER on IntegriCloud