This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
[PATCH] fix glibc-cvs for linux+nptl+static
- From: Eric Valette <eric dot valette at free dot fr>
- To: libc-alpha at sources dot redhat dot com
- Date: Fri, 12 Nov 2004 11:36:03 +0100
- Subject: [PATCH] fix glibc-cvs for linux+nptl+static
- Organization: HOME
- Reply-to: eric dot valette at free dot fr
Hi,
The following configuration options leads to some problems :
../libc/configure --host=i486-linux --build=i486-linux --without-cvs
--enable-add-ons=nptl --with-tls --disable-shared --with-__thread
--enable-kernel=2.6.0 --prefix=/usr/local/npltstatic
--oldincludedir=/usr/include CC=gcc-3.4 CPPFLAGS='-isystem
/usr/src/linux/include' --with-headers=/usr/src/linux/include
I managed to compile and run the Open Posix test suite conformance test
with the attached patch applied.
Fill free to comment if I misunderstood something and patch is incorrect.
--
__
/ ` Eric Valette
/-- __ o _. 6 rue Paul Le Flem
(___, / (_(_(__ 35740 Pace
Tel: +33 (0)2 99 85 26 76 Fax: +33 (0)2 99 85 26 76
E-mail: eric.valette@free.fr
--- libc/elf/Makefile.~1.287.~ 2004-10-27 22:26:47.000000000 +0200
+++ libc/elf/Makefile 2004-11-11 23:40:20.000000000 +0100
@@ -750,7 +750,6 @@
$(objpfx)tst-dlmodcount: $(libdl)
$(objpfx)tst-dlmodcount.out: $(test-modules)
-endif
$(objpfx)tst-dlopenrpathmod.so: $(libdl)
$(objpfx)tst-dlopenrpath: $(objpfx)tst-dlopenrpathmod.so $(libdl)
@@ -773,3 +772,6 @@
$(objpfx)tst-dlmopen3: $(libdl)
$(objpfx)tst-dlmopen3.out: $(objpfx)tst-dlmopen1mod.so
+
+endif
+
--- libc/sysdeps/unix/sysv/linux/i386/syscalls.list.~1.19.~ 2004-03-10 09:38:15.000000000 +0100
+++ libc/sysdeps/unix/sysv/linux/i386/syscalls.list 2004-11-03 23:45:10.000000000 +0100
@@ -2,7 +2,7 @@
modify_ldt EXTRA modify_ldt i:ipi __modify_ldt modify_ldt
vm86old EXTRA vm86old i:p __vm86old vm86@GLIBC_2.0
-vm86 - vm86 i:ip __vm86 vm86@@GLIBC_2.3.4
+vm86 - vm86 i:ip __vm86 vm86
oldgetrlimit EXTRA getrlimit i:ip __old_getrlimit getrlimit@GLIBC_2.0
oldsetrlimit EXTRA setrlimit i:ip __old_setrlimit setrlimit@GLIBC_2.0
time - time Ei:p time
--- libc/sysdeps/unix/sysv/linux/i386/setegid.c.~1.7.~ 2004-09-20 01:44:35.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/setegid.c 2004-11-04 00:11:56.000000000 +0100
@@ -59,8 +59,8 @@
result = __setregid (-1, gid);
#endif
-#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
- if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD && defined (SHARED)
+ if (result == 0 && __libc_ppthread_functions.ptr__nptl_setxid != NULL)
{
struct xid_command cmd;
cmd.syscall_no = __NR_setresgid32;
--- libc/sysdeps/unix/sysv/linux/i386/seteuid.c.~1.6.~ 2004-09-20 01:44:35.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/seteuid.c 2004-11-04 00:16:12.000000000 +0100
@@ -58,7 +58,7 @@
result = __setreuid (-1, uid);
#endif
-#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD && defined(SHARED)
if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
{
struct xid_command cmd;
--- libc/sysdeps/unix/sysv/linux/i386/setgid.c.~1.7.~ 2004-09-20 01:44:35.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/setgid.c 2004-11-04 11:22:12.000000000 +0100
@@ -76,7 +76,7 @@
# endif
#endif
-#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD && defined (SHARED)
if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
{
struct xid_command cmd;
--- libc/sysdeps/unix/sysv/linux/i386/setregid.c.~1.11.~ 2004-09-20 01:44:35.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/setregid.c 2004-11-04 11:23:46.000000000 +0100
@@ -73,7 +73,7 @@
# endif
#endif
-#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD && defined(SHARED)
if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
{
struct xid_command cmd;
--- libc/sysdeps/unix/sysv/linux/i386/setresgid.c.~1.12.~ 2004-10-14 18:12:03.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/setresgid.c 2004-11-04 11:24:07.000000000 +0100
@@ -76,7 +76,7 @@
# endif
# endif
-#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD && defined(SHARED)
if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
{
struct xid_command cmd;
--- libc/sysdeps/unix/sysv/linux/i386/setresuid.c.~1.13.~ 2004-10-14 18:11:29.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/setresuid.c 2004-11-04 11:24:21.000000000 +0100
@@ -76,7 +76,7 @@
# endif
# endif
-#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD && defined(SHARED)
if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
{
struct xid_command cmd;
--- libc/sysdeps/unix/sysv/linux/i386/setreuid.c.~1.11.~ 2004-09-20 01:44:35.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/setreuid.c 2004-11-04 11:24:42.000000000 +0100
@@ -73,7 +73,7 @@
# endif
#endif
-#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD && defined(SHARED)
if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
{
struct xid_command cmd;
--- libc/sysdeps/unix/sysv/linux/i386/setuid.c.~1.8.~ 2004-09-25 09:43:55.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/setuid.c 2004-11-04 11:24:52.000000000 +0100
@@ -73,7 +73,7 @@
# endif
#endif
-#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD
+#if defined HAVE_PTR__NPTL_SETXID && !defined SINGLE_THREAD && defined(SHARED)
if (result == 0 && __libc_pthread_functions.ptr__nptl_setxid != NULL)
{
struct xid_command cmd;
--- libc/sysdeps/unix/sysv/linux/Makefile.~1.144.~ 2004-10-05 01:29:06.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/Makefile 2004-11-11 23:39:40.000000000 +0100
@@ -149,6 +149,7 @@
ifeq ($(subdir),rt)
CFLAGS-mq_send.c += -fexceptions
CFLAGS-mq_receive.c += -fexceptions
+sysdep_routines += mq_close mq_notify mq_receive mq_unlink mq_getattr mq_open mq_send shm_open shmat shmctl shmdt shm_open shm_unlink
endif
ifeq ($(subdir),nscd)