diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a35ee2c4300..e6c03841aea 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -32,6 +32,8 @@ (epiphany_start_function): Handle multiple interrupt arguments and/or forwarder_section attribute. + * config/epiphany/epiphany.h (LIB_SPEC): Link libc again after libgloss. + 2012-02-07 Alan Modra PR target/52107 diff --git a/gcc/config/epiphany/epiphany.h b/gcc/config/epiphany/epiphany.h index 572ec7ecb3f..92b781f5cea 100644 --- a/gcc/config/epiphany/epiphany.h +++ b/gcc/config/epiphany/epiphany.h @@ -43,9 +43,11 @@ along with GCC; see the file COPYING3. If not see } while (0) /* Pick up the libgloss library. One day we may do this by linker script, but - for now its static. */ + for now its static. + libgloss might use errno/__errno, which might not have been needed when we + saw libc the first time, so link with libc a second time. */ #undef LIB_SPEC -#define LIB_SPEC "%{!shared:%{g*:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}} -lepiphany" +#define LIB_SPEC "%{!shared:%{g*:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}} -lepiphany %{!shared:%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}}" #define LINK_SPEC "%{v}"