/* Function to get address of global `h_errno' variable. */
extern int *__h_errno_location (void) __THROW __attribute__ ((__const__));
+#ifdef _LIBC
+# ifndef __UCLIBC_HAS_THREADS__
+extern int weak_const_function *__h_errno_location(void);
+# endif
+#endif
libc_hidden_proto(__h_errno_location)
/* Macros for accessing h_errno from inside libc. */
#include "internal_errno.h"
-/* psm: moved to bits/errno.h: */
-int *
-#ifndef __UCLIBC_HAS_THREADS__
-weak_const_function
-#endif
-__errno_location (void)
+int *__errno_location(void)
{
return &errno;
}
-#ifdef IS_IN_libc /* not really need, only to keep in sync w/ libc_hidden_proto */
libc_hidden_weak(__errno_location)
-#endif
#include "internal_errno.h"
-int * weak_const_function __h_errno_location (void)
+int *__h_errno_location(void)
{
return &h_errno;
}
*/
#include <features.h>
-#ifndef __UCLIBC_HAS_THREADS_NATIVE__
-#define _ERRNO_H
-#endif
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <link.h>
#include <bits/uClibc_page.h>
#include <paths.h>
-#include <unistd.h>
-#include <asm/errno.h>
+#include <errno.h>
+#include <netdb.h>
+#include <stdio.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/sysmacros.h>
#ifdef __UCLIBC_HAS_THREADS_NATIVE__
-#include <errno.h>
#include <pthread-functions.h>
#include <not-cancel.h>
#include <atomic.h>
#ifdef __UCLIBC_HAS_THREADS__
#include <pthread.h>
#endif
+#ifdef __UCLIBC_HAS_LOCALE__
+#include <locale.h>
+#endif
#ifndef SHARED
void *__libc_stack_end = NULL;
/*
* Prototypes.
*/
-extern int *weak_const_function __errno_location(void);
-extern int *weak_const_function __h_errno_location(void);
-extern void weak_function _stdio_init(void) attribute_hidden;
-#ifdef __UCLIBC_HAS_LOCALE__
-extern void weak_function _locale_init(void) attribute_hidden;
-#endif
#ifdef __UCLIBC_HAS_THREADS__
#if !defined (__UCLIBC_HAS_THREADS_NATIVE__) || defined (SHARED)
extern void weak_function __pthread_initialize_minimal(void);
_locale_set_l((unsigned char*) C_LOCALE_SELECTOR, base);
}
-void _locale_init(void) attribute_hidden;
void _locale_init(void)
{
/* TODO: mmap the locale file */
}
#if defined __STDIO_BUFFERS || !defined __UCLIBC__
-void attribute_hidden _stdio_init(void)
+void _stdio_init(void)
{
#ifdef __STDIO_BUFFERS
int old_errno = errno;
# ifndef __ASSEMBLER__
/* Function to get address of global `errno' variable. */
extern int *__errno_location (void) __THROW __attribute__ ((__const__));
+# ifdef _LIBC
+# ifndef __UCLIBC_HAS_THREADS__
+extern int weak_const_function *__errno_location(void);
+# endif
+# endif
libc_hidden_proto(__errno_location)
# ifdef __UCLIBC_HAS_THREADS__
#ifdef _LIBC
/* extern void _locale_set(const unsigned char *p); */
-/* extern void _locale_init(void); */
+extern void weak_function _locale_init(void) attribute_hidden;
#include <stddef.h>
#include <stdint.h>
**********************************************************************/
#if defined _LIBC && (defined IS_IN_libc || defined NOT_IN_libc)
-extern void _stdio_init(void) attribute_hidden;
-extern void _stdio_term(void) attribute_hidden;
+extern void weak_function _stdio_init(void) attribute_hidden;
+extern void weak_function _stdio_term(void) attribute_hidden;
#ifdef __STDIO_HAS_OPENLIST