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 non-IA32 build


Hi!

Some __libc aliases were missing on various arches.
I'm not sure if it is a good idea to export the new
pthread wrappers @@GLIBC_2.3.1, because that will mean current programs/libs
won't use the wrapped syscalls. IMHO it would be much better to export
them at the versions they have in libc.so. select would be a slight problem,
since it is usually select@@GLIBC_2.0, but on Alpha it is
select@@GLIBC_2.1.

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

	* include/libc-symbols.h: Fix a comment typo.

	* sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
	* sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
	Likewise.
	* sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
	Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
	(__libc_sigsuspend): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
	(__libc_sigsuspend): Likewise.
	* sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
	(creat): New weak alias.

--- libc/include/libc-symbols.h.jj	2002-11-05 23:10:07.000000000 +0100
+++ libc/include/libc-symbols.h	2002-12-10 17:36:24.000000000 +0100
@@ -655,7 +655,7 @@
    There is no reason to use hidden_weak over hidden_def in assembly,
    but we provide it for consistency with the C usage.
    hidden_proto doesn't make sense for assembly but the equivalent
-   is to call via the HIDDEN_JUMPTARGET macro einstead of JUMPTARGET.  */
+   is to call via the HIDDEN_JUMPTARGET macro instead of JUMPTARGET.  */
 #  define hidden_def(name)	strong_alias (name, __GI_##name)
 #  define hidden_weak(name)	hidden_def (name)
 #  define hidden_ver(local, name) strong_alias (local, __GI_##name)
--- libc/sysdeps/unix/sysv/linux/alpha/select.S.jj	2002-11-08 11:39:46.000000000 +0100
+++ libc/sysdeps/unix/sysv/linux/alpha/select.S	2002-12-10 17:31:49.000000000 +0100
@@ -125,7 +125,9 @@ default_symbol_version (__select_tv64, _
 strong_alias (__select_tv64, __select_tv64p)
 default_symbol_version (__select_tv64p, select, GLIBC_2.1)
 libc_hidden_ver (__select_tv64, __select)
+strong_alias (__select_tv64, __libc_select)
 #else
+strong_alias (__select, __libc_select)
 weak_alias (__select, select)
 libc_hidden_def (__select)
 #endif
--- libc/sysdeps/unix/sysv/linux/alpha/sigsuspend.S.jj	2002-11-08 11:39:46.000000000 +0100
+++ libc/sysdeps/unix/sysv/linux/alpha/sigsuspend.S	2002-12-10 17:34:10.000000000 +0100
@@ -53,3 +53,4 @@ error:
 
 libc_hidden_def (__sigsuspend)
 weak_alias(__sigsuspend, sigsuspend)
+strong_alias (__sigsuspend, __libc_sigsuspend)
--- libc/sysdeps/unix/sysv/linux/ia64/sigsuspend.c.jj	2002-08-03 11:09:56.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/ia64/sigsuspend.c	2002-12-10 17:37:21.000000000 +0100
@@ -39,3 +39,4 @@ __sigsuspend (set)
 }
 libc_hidden_def (__sigsuspend)
 weak_alias (__sigsuspend, sigsuspend)
+strong_alias (__sigsuspend, __libc_sigsuspend)
--- libc/sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c.jj	2002-08-03 11:09:58.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c	2002-12-10 17:37:52.000000000 +0100
@@ -38,3 +38,4 @@ __sigsuspend (set)
 }
 libc_hidden_def (__sigsuspend)
 weak_alias (__sigsuspend, sigsuspend)
+strong_alias (__sigsuspend, __libc_sigsuspend)
--- libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c.jj	2002-08-03 11:09:59.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c	2002-12-10 17:38:24.000000000 +0100
@@ -38,3 +38,4 @@ __sigsuspend (set)
 }
 libc_hidden_def (__sigsuspend)
 weak_alias (__sigsuspend, sigsuspend)
+strong_alias (__sigsuspend, __libc_sigsuspend)
--- libc/sysdeps/generic/creat.c.jj	2001-08-23 18:49:27.000000000 +0200
+++ libc/sysdeps/generic/creat.c	2002-12-10 18:09:16.000000000 +0100
@@ -23,9 +23,10 @@
 
 /* Create FILE with protections MODE.  */
 int
-creat (file, mode)
+__libc_creat (file, mode)
      const char *file;
      mode_t mode;
 {
   return __open (file, O_WRONLY|O_CREAT|O_TRUNC, mode);
 }
+weak_alias (__libc_creat, creat)

	Jakub


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