svn commit: trunk/uClibc: libc/misc/internals libpthread/linuxthre etc...
jocke at uclibc.org
jocke at uclibc.org
Thu Jan 11 14:39:14 PST 2007
Author: jocke
Date: 2007-01-11 14:39:13 -0800 (Thu, 11 Jan 2007)
New Revision: 17253
Log:
Peter Mazinger pointed out that my last commit was faulty.
This should fix it.
Modified:
trunk/uClibc/libc/misc/internals/__uClibc_main.c
trunk/uClibc/libpthread/linuxthreads.old/forward.c
trunk/uClibc/libpthread/linuxthreads.old/pthread.c
trunk/uClibc/libpthread/linuxthreads.old/sysdeps/pthread/pthread-functions.h
trunk/uClibc/libpthread/linuxthreads/forward.c
trunk/uClibc/libpthread/linuxthreads/pthread.c
trunk/uClibc/libpthread/linuxthreads/sysdeps/pthread/pthread-functions.h
Changeset:
Modified: trunk/uClibc/libc/misc/internals/__uClibc_main.c
===================================================================
--- trunk/uClibc/libc/misc/internals/__uClibc_main.c 2007-01-11 17:20:00 UTC (rev 17252)
+++ trunk/uClibc/libc/misc/internals/__uClibc_main.c 2007-01-11 22:39:13 UTC (rev 17253)
@@ -400,7 +400,7 @@
exit(main(argc, argv, __environ));
}
-#ifdef __UCLIBC_HAS_THREADS__
+#if defined(__UCLIBC_HAS_THREADS__) && !defined(SHARED)
/* Weaks for internal library use only.
*
* We need to define weaks here to cover all the pthread functions that
Modified: trunk/uClibc/libpthread/linuxthreads/forward.c
===================================================================
--- trunk/uClibc/libpthread/linuxthreads/forward.c 2007-01-11 17:20:00 UTC (rev 17252)
+++ trunk/uClibc/libpthread/linuxthreads/forward.c 2007-01-11 22:39:13 UTC (rev 17253)
@@ -17,11 +17,13 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <features.h>
+#include <stdlib.h>
#include <dlfcn.h>
-#include <stdlib.h>
/* psm: keep this before internals.h */
libc_hidden_proto(exit)
+
#include "internals.h"
/* Pointers to the libc functions. */
@@ -129,7 +131,6 @@
FORWARD (pthread_mutex_unlock, (pthread_mutex_t *mutex), (mutex), 0)
strong_alias(pthread_mutex_unlock, __pthread_mutex_unlock)
-
FORWARD2 (pthread_self, pthread_t, (void), (), return 0)
@@ -139,5 +140,7 @@
FORWARD (pthread_setcanceltype, (int type, int *oldtype), (type, oldtype), 0)
FORWARD2 (_pthread_cleanup_push, void, (struct _pthread_cleanup_buffer * buffer, void (*routine)(void *), void * arg), (buffer, routine, arg), return)
+FORWARD2 (_pthread_cleanup_push_defer, void, (struct _pthread_cleanup_buffer * buffer, void (*routine)(void *), void * arg), (buffer, routine, arg), return)
FORWARD2 (_pthread_cleanup_pop, void, (struct _pthread_cleanup_buffer * buffer, int execute), (buffer, execute), return)
+FORWARD2 (_pthread_cleanup_pop_restore, void, (struct _pthread_cleanup_buffer * buffer, int execute), (buffer, execute), return)
Modified: trunk/uClibc/libpthread/linuxthreads/pthread.c
===================================================================
--- trunk/uClibc/libpthread/linuxthreads/pthread.c 2007-01-11 17:20:00 UTC (rev 17252)
+++ trunk/uClibc/libpthread/linuxthreads/pthread.c 2007-01-11 22:39:13 UTC (rev 17253)
@@ -278,7 +278,9 @@
.ptr_pthread_sigwait = __pthread_sigwait,
.ptr_pthread_raise = __pthread_raise,
.ptr__pthread_cleanup_push = _pthread_cleanup_push,
- .ptr__pthread_cleanup_pop = _pthread_cleanup_pop
+ .ptr__pthread_cleanup_push_defer = _pthread_cleanup_push_defer,
+ .ptr__pthread_cleanup_pop = _pthread_cleanup_pop,
+ .ptr__pthread_cleanup_pop_restore = _pthread_cleanup_pop_restore,
};
#ifdef SHARED
# define ptr_pthread_functions &__pthread_functions
Modified: trunk/uClibc/libpthread/linuxthreads/sysdeps/pthread/pthread-functions.h
===================================================================
--- trunk/uClibc/libpthread/linuxthreads/sysdeps/pthread/pthread-functions.h 2007-01-11 17:20:00 UTC (rev 17252)
+++ trunk/uClibc/libpthread/linuxthreads/sysdeps/pthread/pthread-functions.h 2007-01-11 22:39:13 UTC (rev 17253)
@@ -84,9 +84,12 @@
const struct timespec *);
void (*ptr__pthread_cleanup_push) (struct _pthread_cleanup_buffer * buffer,
void (*routine)(void *), void * arg);
-
+ void (*ptr__pthread_cleanup_push_defer) (struct _pthread_cleanup_buffer * buffer,
+ void (*routine)(void *), void * arg);
void (*ptr__pthread_cleanup_pop) (struct _pthread_cleanup_buffer * buffer,
int execute);
+ void (*ptr__pthread_cleanup_pop_restore) (struct _pthread_cleanup_buffer * buffer,
+ int execute);
};
/* Variable in libc.so. */
Modified: trunk/uClibc/libpthread/linuxthreads.old/forward.c
===================================================================
--- trunk/uClibc/libpthread/linuxthreads.old/forward.c 2007-01-11 17:20:00 UTC (rev 17252)
+++ trunk/uClibc/libpthread/linuxthreads.old/forward.c 2007-01-11 22:39:13 UTC (rev 17253)
@@ -140,5 +140,7 @@
FORWARD (pthread_setcanceltype, (int type, int *oldtype), (type, oldtype), 0)
FORWARD2 (_pthread_cleanup_push, void, (struct _pthread_cleanup_buffer * buffer, void (*routine)(void *), void * arg), (buffer, routine, arg), return)
+FORWARD2 (_pthread_cleanup_push_defer, void, (struct _pthread_cleanup_buffer * buffer, void (*routine)(void *), void * arg), (buffer, routine, arg), return)
FORWARD2 (_pthread_cleanup_pop, void, (struct _pthread_cleanup_buffer * buffer, int execute), (buffer, execute), return)
+FORWARD2 (_pthread_cleanup_pop_restore, void, (struct _pthread_cleanup_buffer * buffer, int execute), (buffer, execute), return)
Modified: trunk/uClibc/libpthread/linuxthreads.old/pthread.c
===================================================================
--- trunk/uClibc/libpthread/linuxthreads.old/pthread.c 2007-01-11 17:20:00 UTC (rev 17252)
+++ trunk/uClibc/libpthread/linuxthreads.old/pthread.c 2007-01-11 22:39:13 UTC (rev 17253)
@@ -336,6 +336,8 @@
.ptr__pthread_cleanup_push = _pthread_cleanup_push,
.ptr__pthread_cleanup_pop = _pthread_cleanup_pop
*/
+ .ptr__pthread_cleanup_push_defer = _pthread_cleanup_push_defer,
+ .ptr__pthread_cleanup_pop_restore = _pthread_cleanup_pop_restore,
};
#ifdef SHARED
# define ptr_pthread_functions &__pthread_functions
Modified: trunk/uClibc/libpthread/linuxthreads.old/sysdeps/pthread/pthread-functions.h
===================================================================
--- trunk/uClibc/libpthread/linuxthreads.old/sysdeps/pthread/pthread-functions.h 2007-01-11 17:20:00 UTC (rev 17252)
+++ trunk/uClibc/libpthread/linuxthreads.old/sysdeps/pthread/pthread-functions.h 2007-01-11 22:39:13 UTC (rev 17253)
@@ -84,9 +84,12 @@
const struct timespec *);
void (*ptr__pthread_cleanup_push) (struct _pthread_cleanup_buffer * buffer,
void (*routine)(void *), void * arg);
-
+ void (*ptr__pthread_cleanup_push_defer) (struct _pthread_cleanup_buffer * buffer,
+ void (*routine)(void *), void * arg);
void (*ptr__pthread_cleanup_pop) (struct _pthread_cleanup_buffer * buffer,
int execute);
+ void (*ptr__pthread_cleanup_pop_restore) (struct _pthread_cleanup_buffer * buffer,
+ int execute);
};
/* Variable in libc.so. */
More information about the uClibc-cvs
mailing list