From 228c019e6336d6da448715a1c5fcca9771827f61 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 2 Apr 2012 22:26:43 +0200 Subject: Call __ctype_init in early glibc startup. This adds the bits missing from fd5bdc0924e0cfd1688b632068c1b26f3b0c88da. --- ChangeLog | 8 ++++++++ csu/init-first.c | 6 +++++- sysdeps/i386/init-first.c | 6 +++++- sysdeps/mach/hurd/i386/init-first.c | 7 +++++-- sysdeps/mach/hurd/powerpc/init-first.c | 6 +++++- sysdeps/sh/init-first.c | 6 +++++- 6 files changed, 33 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 01f5718784..ebb70425fa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2012-04-02 Thomas Schwinge + + * csu/init-first.c (__libc_init_first): Call __ctype_init. + * sysdeps/i386/init-first.c (init): Likewise. + * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Likewise. + * sysdeps/mach/hurd/powerpc/init-first.c (posixland_init): Likewise. + * sysdeps/sh/init-first.c (init): Likewise. + 2012-04-01 Ulrich Drepper * po/ru.po: Update from translation team. diff --git a/csu/init-first.c b/csu/init-first.c index 0115061956..050959dcb2 100644 --- a/csu/init-first.c +++ b/csu/init-first.c @@ -1,5 +1,5 @@ /* Initialization code run first thing by the ELF startup code. Stub version. - Copyright (C) 1995, 1997, 1998, 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 1995-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,6 +16,7 @@ License along with the GNU C Library; if not, see . */ +#include #include #include @@ -55,4 +56,7 @@ void __libc_init_first /* This is a hack to make the special getopt in GNU libc working. */ __getopt_clean_environment (envp); #endif + + /* Initialize ctype data. */ + __ctype_init (); } diff --git a/sysdeps/i386/init-first.c b/sysdeps/i386/init-first.c index 2f807760a1..c2eaccd017 100644 --- a/sysdeps/i386/init-first.c +++ b/sysdeps/i386/init-first.c @@ -1,5 +1,5 @@ /* Initialization code run first thing by the ELF startup code. For i386/Unix. - Copyright (C) 1995,1996,1997,2000,2001,2002 Free Software Foundation, Inc. + Copyright (C) 1995-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,6 +16,7 @@ License along with the GNU C Library; if not, see . */ +#include #include extern void __libc_init (int, char **, char **); @@ -40,6 +41,9 @@ init (int *data) /* This is a hack to make the special getopt in GNU libc working. */ __getopt_clean_environment (envp); #endif + + /* Initialize ctype data. */ + __ctype_init (); } #ifdef SHARED diff --git a/sysdeps/mach/hurd/i386/init-first.c b/sysdeps/mach/hurd/i386/init-first.c index 7a10e7857b..4785e8dbec 100644 --- a/sysdeps/mach/hurd/i386/init-first.c +++ b/sysdeps/mach/hurd/i386/init-first.c @@ -1,6 +1,5 @@ /* Initialization code run first thing by the ELF startup code. For i386/Hurd. - Copyright (C) 1995,96,97,98,99,2000,01,02,03,04,05 - Free Software Foundation, Inc. + Copyright (C) 1995-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,6 +17,7 @@ . */ #include +#include #include #include #include @@ -91,6 +91,9 @@ posixland_init (int argc, char **argv, char **envp) __getopt_clean_environment (envp); #endif + /* Initialize ctype data. */ + __ctype_init (); + #if defined SHARED && !defined NO_CTORS_DTORS_SECTIONS __libc_global_ctors (); #endif diff --git a/sysdeps/mach/hurd/powerpc/init-first.c b/sysdeps/mach/hurd/powerpc/init-first.c index 6629a04bc6..9531b5a6e6 100644 --- a/sysdeps/mach/hurd/powerpc/init-first.c +++ b/sysdeps/mach/hurd/powerpc/init-first.c @@ -1,5 +1,5 @@ /* Initialization code run first thing by the ELF startup code. PowerPC/Hurd. - Copyright (C) 1995-2001, 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1995-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -17,6 +17,7 @@ . */ #include +#include #include #include #include @@ -81,6 +82,9 @@ posixland_init (int argc, char **argv, char **envp) __getopt_clean_environment (__environ); #endif + /* Initialize ctype data. */ + __ctype_init (); + #if defined SHARED && !defined NO_CTORS_DTORS_SECTIONS __libc_global_ctors (); #endif diff --git a/sysdeps/sh/init-first.c b/sysdeps/sh/init-first.c index 08ae8a3de0..c2e45e4287 100644 --- a/sysdeps/sh/init-first.c +++ b/sysdeps/sh/init-first.c @@ -1,5 +1,5 @@ /* Initialization code run first thing by the ELF startup code. For SH. - Copyright (C) 1995-1998, 2000, 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 1995-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -16,6 +16,7 @@ License along with the GNU C Library; if not, see . */ +#include #include extern void __libc_init (int, char **, char **); @@ -40,6 +41,9 @@ init (int *data) /* This is a hack to make the special getopt in GNU libc working. */ __getopt_clean_environment (envp); #endif + + /* Initialize ctype data. */ + __ctype_init (); } #ifdef SHARED -- cgit v1.2.3