diff --git a/libgloss/cris/crt0.S b/libgloss/cris/crt0.S index 74c159415..30419887e 100644 --- a/libgloss/cris/crt0.S +++ b/libgloss/cris/crt0.S @@ -1,5 +1,5 @@ /* Generic simplistic start-up-stub for CRIS/CRISv32. - Copyright (C) 1993-2005, 2007 Axis Communications. + Copyright (C) 1993-2005, 2007, 2017 Axis Communications. All rights reserved. Redistribution and use in source and binary forms, with or without @@ -26,6 +26,8 @@ IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include "newlib.h" + #undef cris #undef L #ifdef __NO_UNDERSCORES__ @@ -34,6 +36,11 @@ #define L(x) _ ## x #endif +#ifdef HAVE_INITFINI_ARRAY +#define _init __libc_init_array +#define _fini __libc_fini_array +#endif + ; Rudimentary v0..v32-compatible startup stub. #ifdef __ELF__ diff --git a/libgloss/cris/lcrt0.c b/libgloss/cris/lcrt0.c index ee5074634..8b8cc0bb0 100644 --- a/libgloss/cris/lcrt0.c +++ b/libgloss/cris/lcrt0.c @@ -1,5 +1,5 @@ /* Support for cris*-axis-linux-gnu and src/sim/cris simulator. - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Axis Communications. + Copyright (C) 2000-2005, 2017 Axis Communications. All rights reserved. Redistribution and use in source and binary forms, with or without @@ -27,6 +27,12 @@ POSSIBILITY OF SUCH DAMAGE. */ #include "linunistd.h" +#include "newlib.h" + +#ifdef HAVE_INITFINI_ARRAY +#define _init __libc_init_array +#define _fini __libc_fini_array +#endif extern void exit (int) __attribute ((__noreturn__));