build: allow platforms to choose the c library to build with
Created by: vijayenthiran-arm
The firmware build currently uses the newlib-nano as standard C library for optimized code size. Newlib-nano does not have some features that were added after C89 1. For example, it does not have 64-bit integer support in format IO due to which it is not possible to print a 64-bit integer. GCC toolchain by default supports standard newlib C library.
This patch makes newlib as the default library while building the
firmware and introduce build flag BS_FIRMWARE_USE_NEWLIB_NANO_SPECS
to
allow the platform to choose the newlib-nano library over the default
newlib library. Except for Arm's infrastructure reference platforms
(SGI575, RDN1E1, RD-Daniel, RD-Daniel-XLR and N1SDP), all other
platforms are made to use newlib-nano library to generate optimized code
size.
Change-Id: Ia2ce178827f7661ae770c1edc4d534f4330a42cd Signed-off-by: Vijayenthiran Subramaniam vijayenthiran.subramaniam@arm.com