build: image: posix compatibility cut v head
authorKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tue, 12 Nov 2019 14:27:06 +0000 (14:27 +0000)
committerKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tue, 12 Nov 2019 15:43:14 +0000 (15:43 +0000)
commitdfd8c45a98f82c69cad7a622016aa70210b025c5
treee01971c0b3a464556a6aefa19fcb0f337445fe63
parent6becc37f33be4c2f2b5d58467bdda41c251d9e2e
build: image: posix compatibility cut v head

Replace 2 instances of non posix use of 'head' with posix compliant
'cut'.

'head -c n' cuts 'n' bytes from the passed string and happens to work on
Linux & Mac OS X even though '-c' is not posix.

'head --bytes n' does the same thing and happens to work on linux but
not on Mac OS X and is also not posix.

'cut -b1-8' cuts the first 8 bytes from the passed string and is posix
compliant, hence works on Linux & Mac OS X.

Our usage of 'head --bytes' was particularly unfortunate since it was
used to calculated the RootFS UUID passed to grub - the net result being
a non-functioning system waiting for the root file system to appear.

Thanks to karlp, ynezz & others for pointers on solving this.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
include/image.mk