tools/firmware: Build firmware as -ffreestanding
authorAndrew Cooper <andrew.cooper3@citrix.com>
Thu, 25 Feb 2021 19:15:08 +0000 (19:15 +0000)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Mon, 1 Mar 2021 23:19:39 +0000 (23:19 +0000)
commit0eae016b6e3dce69e3fb86aca5c4f221591a2f12
treee0736a49f1bde17646e12cff3f74df31a59eaffe
parent570da5423dbee1a253fa09ceaa89c68e725e9d5b
tools/firmware: Build firmware as -ffreestanding

firmware should always have been -ffreestanding, as it doesn't execute in the
host environment.  -ffreestanding implies -fno-builtin, so replace the option.

inttypes.h isn't a freestanding header, but the 32bitbios_support.c only wants
the stdint.h types so switch to the more appropriate include.

This removes the build time dependency on a 32bit libc just to compile the
hvmloader and friends.

Update README and the TravisCI configuration.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Ian Jackson <iwj@xenproject.org>
Release-Acked-by: Ian Jackson <iwj@xenproject.org>
.travis.yml
README
tools/firmware/Rules.mk
tools/firmware/hvmloader/32bitbios_support.c