...
1) Build two version of newlib, one is the normal version, which is used as
default; the other one is built by enabling all code size tailoring
features.
2) For the tailored version of library, we manually rename
libc.a/libgloss.a(/libstdc++.a) into libc_s.a/libgloss_s.a(/libstdc++_s.a).
These renamed libraries are installed to the same target directory and
coexist with normal version ones.
3) specs files like nano.specs/rdimon.specs/nosys.specs are introduced in
order to automatically choose wanted version of library for linking. In
other words, GCC can choose libc_s.a or libc.a according to specs files
provided by end-users.
This patch is to support this. With this feature, developers only need to
specify "-specs=nano.specs" to link the small foot-print lib*_s.a libraries.
The patch adds new specs file "nano.specs" as well as modifies
rdimon.specs/nosys.specs as necessary. Though nosys.specs is changed, the
default behavior won't be changed unless "-specs=nano.specs" is specified.