mirror of
https://github.com/ipxe/ipxe.git
synced 2026-05-05 12:26:37 +02:00
[build] Avoid using awk to format build ID as hexadecimal
The version of awk used in FreeBSD seems to be incapable of formatting
unsigned 32-bit integers above 0x80000000 and will silently render any
such value as 0x80000000. For example:
echo 3735928559 | awk '{printf "0x%08x", $1}'
will produce 0x80000000 instead of the correct 0xdeadbeef.
This results in an approximately 50% chance of a build ID collision
when building on FreeBSD.
Work around this problem by passing the decimal value directly in the
ld --defsym argument value.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
parent
3a2411b43f
commit
ba20ba4273
@ -1176,7 +1176,7 @@ blib : $(BLIB)
|
||||
# different builds (such as builds for multiple ROMs all built from
|
||||
# the same blib.a).
|
||||
#
|
||||
BUILD_ID_CMD = cat $^ | cksum | awk '{printf "0x%08x", $$1}'
|
||||
BUILD_ID_CMD = cat $^ | cksum | awk '{print $$1}'
|
||||
|
||||
# Build timestamp
|
||||
#
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user