diff options
author | Rafal Jaworowski <raj@FreeBSD.org> | 2008-02-05 10:46:30 +0000 |
---|---|---|
committer | Rafal Jaworowski <raj@FreeBSD.org> | 2008-02-05 10:46:30 +0000 |
commit | fcfdd827d0d04600776a3c4ebce5d05685386766 (patch) | |
tree | c4c9a9943432aae255fe95e78ba8063b382a46cc /sys/conf | |
parent | 72c6438b52269852e1eb0a406311709da2ab2e5b (diff) | |
download | src-fcfdd827d0d04600776a3c4ebce5d05685386766.tar.gz src-fcfdd827d0d04600776a3c4ebce5d05685386766.zip |
Introduce a standalone shell script for embedding MFS image.
This allows to fix a problem with ARM kernel.bin not having the MFS image
embedded: it is objcopied from the kernel.noheader temporary ELF file, which
was not subject to embedding the MFS image previously.
Reviewed by: imp
Approved by: cognet (mentor)
Notes
Notes:
svn path=/head/; revision=175984
Diffstat (limited to 'sys/conf')
-rw-r--r-- | sys/conf/Makefile.arm | 4 | ||||
-rw-r--r-- | sys/conf/kern.post.mk | 8 |
2 files changed, 5 insertions, 7 deletions
diff --git a/sys/conf/Makefile.arm b/sys/conf/Makefile.arm index 4ac4a07bb943..574d422b6d9d 100644 --- a/sys/conf/Makefile.arm +++ b/sys/conf/Makefile.arm @@ -63,6 +63,10 @@ SYSTEM_LD_TAIL +=;sed s/" + SIZEOF_HEADERS"// ldscript.$M\ ${KERNEL_KO}.bin; \ rm ${FULLKERNEL}.noheader +.if defined(MFS_IMAGE) +SYSTEM_LD_TAIL += ;sh ${S}/tools/embed_mfs.sh ${KERNEL_KO}.bin ${MFS_IMAGE}; +.endif + FILES_CPU_FUNC = $S/$M/$M/cpufunc_asm_arm7tdmi.S \ $S/$M/$M/cpufunc_asm_arm8.S $S/$M/$M/cpufunc_asm_arm9.S \ $S/$M/$M/cpufunc_asm_sa1.S $S/$M/$M/cpufunc_asm_arm10.S \ diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk index 1eca596c1694..dbd678a214d6 100644 --- a/sys/conf/kern.post.mk +++ b/sys/conf/kern.post.mk @@ -91,13 +91,7 @@ ${FULLKERNEL}: ${SYSTEM_DEP} vers.o .endif ${SYSTEM_LD_TAIL} .if defined(MFS_IMAGE) - @dd if="${MFS_IMAGE}" ibs=8192 of="${FULLKERNEL}" \ - obs=`strings -at d "${FULLKERNEL}" | \ - grep "MFS Filesystem goes here" | awk '{print $$1}'` \ - oseek=1 conv=notrunc 2>/dev/null && \ - strings ${FULLKERNEL} | \ - grep 'MFS Filesystem had better STOP here' > /dev/null || \ - (rm ${FULLKERNEL} && echo 'MFS image too large' && false) + @sh ${S}/tools/embed_mfs.sh ${FULLKERNEL} ${MFS_IMAGE} .endif .if !exists(${.OBJDIR}/.depend) |