Patchwork boot-directdisk: use awk instead of echo -ne for dash compatibility

login
register
mail settings
Submitter Jonathan Liu
Date July 20, 2013, 12:11 p.m.
Message ID <1374322280-1792-1-git-send-email-net147@gmail.com>
Download mbox | patch
Permalink /patch/54081/
State Accepted
Commit 1928f46e8e9f281e3e64f916048cc9314e125150
Headers show

Comments

Jonathan Liu - July 20, 2013, 12:11 p.m.
The echo command is a dash shell built-in and does not support the
-n and -e options so use awk instead.

This fixes the partition table being corrupted when writing the MBR
disk signature into the image.

[YOCTO #4859]

Signed-off-by: Jonathan Liu <net147@gmail.com>
---
 meta/classes/boot-directdisk.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Patch

diff --git a/meta/classes/boot-directdisk.bbclass b/meta/classes/boot-directdisk.bbclass
index 182957b..8a55aae 100644
--- a/meta/classes/boot-directdisk.bbclass
+++ b/meta/classes/boot-directdisk.bbclass
@@ -81,7 +81,7 @@  build_boot_dd() {
 	parted $IMAGE set 1 boot on 
 	parted $IMAGE print
 
-	echo -ne "$(echo ${DISK_SIGNATURE} | fold -w 2 | tac | paste -sd '' | sed 's/\(..\)/\\x&/g')" | \
+	awk "BEGIN { printf \"$(echo ${DISK_SIGNATURE} | fold -w 2 | tac | paste -sd '' | sed 's/\(..\)/\\x&/g')\" }" | \
 		dd of=$IMAGE bs=1 seek=440 conv=notrunc
 
 	OFFSET=`expr $END2 / 512`