summaryrefslogtreecommitdiffstats
path: root/sys/tools/embed_mfs.sh
diff options
context:
space:
mode:
authorlwhsu <lwhsu@FreeBSD.org>2017-01-13 19:22:22 +0000
committerlwhsu <lwhsu@FreeBSD.org>2017-01-13 19:22:22 +0000
commit7e40cca87d6d2fd28c0c7e11c5e6b8711f49f563 (patch)
treed79826e39c11213392d327118bfb424cba98400f /sys/tools/embed_mfs.sh
parent92b8af7ad77cfb349042a1847e8e72016c3241dd (diff)
downloadFreeBSD-src-7e40cca87d6d2fd28c0c7e11c5e6b8711f49f563.zip
FreeBSD-src-7e40cca87d6d2fd28c0c7e11c5e6b8711f49f563.tar.gz
MFC r311881:
Replace using of objdump with elfdump In-tree objdump is too old to dump new ELF headers. But for example if we use: `make CROSS_TOOLCHAIN=riscv64-gcc TARGET_ARCH=riscv64` and do not specify CROSS_BINUTILS_PREFIX in env, embed_mfs.sh cannot find the correct objdump. This patch just replaces using of objdump with elfdump to collect needed information. Later we may also put an ELFDUMP in CROSSENV and use it in embed_mfs.sh . Reviewed by: emaste, br Differential Revision: https://reviews.freebsd.org/D9062
Diffstat (limited to 'sys/tools/embed_mfs.sh')
-rw-r--r--sys/tools/embed_mfs.sh6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/tools/embed_mfs.sh b/sys/tools/embed_mfs.sh
index 3f20257..a7ac80c 100644
--- a/sys/tools/embed_mfs.sh
+++ b/sys/tools/embed_mfs.sh
@@ -36,12 +36,12 @@ mfs_size=`stat -f '%z' $2 2> /dev/null`
# If we can't determine MFS image size - bail.
[ -z ${mfs_size} ] && echo "Can't determine MFS image size" && exit 1
-sec_info=`objdump -h $1 2> /dev/null | grep " oldmfs "`
+sec_info=`elfdump -c $1 2> /dev/null | grep -A 5 -E "sh_name: oldmfs$"`
# If we can't find the mfs section within the given kernel - bail.
[ -z "${sec_info}" ] && echo "Can't locate mfs section within kernel" && exit 1
-sec_size=`echo ${sec_info} | awk '{printf("%d", "0x" $3)}' 2> /dev/null`
-sec_start=`echo ${sec_info} | awk '{printf("%d", "0x" $6)}' 2> /dev/null`
+sec_size=`echo "${sec_info}" | awk '/sh_size/ {print $2}' 2> /dev/null`
+sec_start=`echo "${sec_info}" | awk '/sh_offset/ {print $2}' 2> /dev/null`
# If the mfs section size is smaller than the mfs image - bail.
[ ${sec_size} -lt ${mfs_size} ] && echo "MFS image too large" && exit 1
OpenPOWER on IntegriCloud