mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-17 12:01:53 +08:00
be5926babb
The changes in af272aca591fe1dc0f1be64ae5bda147ea98a047 only works when using gcc/g++ with -E or -save-temps, otherwise newlib's newlib.h gets used even if -specs=nano.specs is specified. This is because the driver only use cpp_options spec for the external cpp tool, not for the integrated one. This patch uses instead cpp_unique_options which is used in all cases: it is used directly when the integrated preprocessor is used, and indirectly by expansion of cpp_options otherwise.
23 lines
740 B
Plaintext
23 lines
740 B
Plaintext
%rename link nano_link
|
|
%rename link_gcc_c_sequence nano_link_gcc_c_sequence
|
|
%rename cpp_unique_options nano_cpp_unique_options
|
|
|
|
*cpp_unique_options:
|
|
-isystem =/include/newlib-nano %(nano_cpp_unique_options)
|
|
|
|
*nano_libc:
|
|
-lc_nano
|
|
|
|
*nano_libgloss:
|
|
%{specs=rdimon.specs:-lrdimon_nano} %{specs=nosys.specs:-lnosys}
|
|
|
|
*link_gcc_c_sequence:
|
|
%(nano_link_gcc_c_sequence) --start-group %G %(nano_libc) %(nano_libgloss) --end-group
|
|
|
|
*link:
|
|
%(nano_link) %:replace-outfile(-lc -lc_nano) %:replace-outfile(-lg -lg_nano) %:replace-outfile(-lrdimon -lrdimon_nano) %:replace-outfile(-lstdc++ -lstdc++_nano) %:replace-outfile(-lsupc++ -lsupc++_nano)
|
|
|
|
*lib:
|
|
%{!shared:%{g*:-lg_nano} %{!p:%{!pg:-lc_nano}}%{p:-lc_p}%{pg:-lc_p}}
|
|
|