[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 1/2] livepatch-build-tools: remove usage of gawk
On Fri, Nov 24, 2023 at 12:10:57PM +0000, Alejandro Vallejo wrote: > On 24/11/2023 11:43, Ross Lagerwall wrote: > > On Thu, Nov 23, 2023 at 4:08 PM Roger Pau Monne <roger.pau@xxxxxxxxxx> > wrote: > >> > >> And instead use plain awk. > >> > >> There's no need to use the --non-decimal-data option for gawk, since the > >> numbers that we want to print are already prefixed with '0x', and so > plain awk > >> will do the conversion from hexadecimal to decimal just fine. > > > > I don't think that's true (at least with gnu awk 5.1.1): > > > > $ echo '<e98b7> DW_AT_byte_size : 0x14' | awk '{printf("%d\n", $4)}' > > 0 > > > > I think it's a FreeBSD quirk. From their man page: Seems like BusyBox inherited that behavior: BusyBox v1.36.1 (2023-07-27 17:12:24 UTC) multi-call binary. $ echo '<e98b7> DW_AT_byte_size : 0x14' | awk '{printf("%d\n", $4)}' 20 I've assumed that Busybox was the lowest common denominator, but not in this case. > > Historically, awk did not accept "0x" as a hex string. However, > since > > One True Awk used strtod to convert strings to floats, and since > "0x12" > > is a valid hexadecimal representation of a floating point number, > On > > FreeBSD, awk has accepted this notation as an extension since One > True > > Awk was imported in FreeBSD 5.0. Upstream One True Awk has > restored > > the historical behavior for better compatibility between the > different > > awk implementations. Both gawk and mawk already behave similarly. > > Starting with FreeBSD 14.0 awk will no longer accept this > extension. > > I'm guessing the latest FreeBSD doesn't have that behaviour either? Hm, I guess my FreeBSD world is not new enough, as the awk (version 20210724) I have does parse hex numbers: # echo '<e98b7> DW_AT_byte_size : 0x14' | awk '{printf("%d\n", $4)}' 20 Will see what I can do to address this without requiring gawk if possible. I'm not sure if there are other issues that would prevent livepatch-build-tools from working on FreeBSD however. Thanks, Roger.
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |