This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Fix for 7 more .plt slots patch


On Tue, Dec 31, 2002 at 04:33:59PM +0100, Jakub Jelinek wrote:
> Hi!
> 
> In NPTL build it will be less (I guess 4), NPTL build is still running.

Should have waited for the TLS build to finish. Sorry.

Here is an incremental patch to fix TLS build (which built/checked ok
in non-TLS build too):

2002-12-31  Jakub Jelinek  <jakub@redhat.com>

	* include/errno.h (__errno_location): Add prototype.
	Use libc_hidden_proto unconditionally.
	* include/netdb.h (__h_errno_location): Use libc_hidden_proto
	unconditionally.
	* include/resolv.h (__res_state): Likewise.

--- libc/include/errno.h.jj	2002-12-31 16:14:36.000000000 +0100
+++ libc/include/errno.h	2002-12-31 18:16:10.000000000 +0100
@@ -29,14 +29,17 @@ extern int errno attribute_hidden;
 #    define errno errno		/* For #ifndef errno tests.  */
 #   endif
 extern __thread int errno attribute_tls_model_ie;
-#  else
-libc_hidden_proto (__errno_location)
 #  endif
 
 # endif	/* RTLD_PRIVATE_ERRNO */
 
 # define __set_errno(val) (errno = (val))
 
+# ifndef __ASSEMBLER__
+extern int *__errno_location (void) __THROW __attribute__ ((__const__));
+libc_hidden_proto (__errno_location)
+# endif
+
 #endif /* _ERRNO_H */
 
 #endif /* ! _ERRNO_H */
--- libc/include/netdb.h.jj	2002-12-31 18:17:17.000000000 +0100
+++ libc/include/netdb.h	2002-12-31 18:17:44.000000000 +0100
@@ -14,7 +14,6 @@
 extern __thread int h_errno attribute_tls_model_ie;
 #   define __set_h_errno(x)	(h_errno = (x))
 #  else
-libc_hidden_proto (__h_errno_location)
 static inline int
 __set_h_errno (int __err)
 {
@@ -38,6 +37,7 @@ libc_hidden_proto (getaddrinfo)
 libc_hidden_proto (getnameinfo)
 libc_hidden_proto (freeaddrinfo)
 libc_hidden_proto (gai_strerror)
+libc_hidden_proto (__h_errno_location)
 
 /* Document internal interfaces.  */
 extern int __gethostent_r (struct hostent *__restrict __result_buf,
--- libc/include/resolv.h.jj	2002-12-31 18:18:56.000000000 +0100
+++ libc/include/resolv.h	2002-12-31 18:18:56.000000000 +0100
@@ -20,8 +20,6 @@
 #    define _res __libc_res
 #   endif
 extern __thread struct __res_state _res attribute_tls_model_ie;
-#  else
-libc_hidden_proto (__res_state)
 #  endif
 # else
 #  ifndef __BIND_NOSTATIC
@@ -48,6 +46,7 @@ extern int res_ourserver_p (const res_st
 			    const struct sockaddr_in6 *__inp);
 libc_hidden_proto (__res_ninit)
 libc_hidden_proto (__res_randomid)
+libc_hidden_proto (__res_state)
 
 int __libc_res_nquery (res_state, const char *, int, int, u_char *, int,
 		       u_char **);


	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]