diff --git a/ChangeLog b/ChangeLog index 0fe4bd6294..6aa725569f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2001-09-12 Jakub Jelinek + + * rt/Makefile (LDFLAGS-rt.so): Use shared thread library as librt's + filter. + 2001-09-12 Ulrich Drepper * config.h.in: Enforce optimization to be used. @@ -18,7 +23,7 @@ 2001-09-08 Ulrich Drepper * elf/dl-object.c: Avoid allocating extra memory block for name. - * elf/dl-close.c (_dl_close): Don't free l_libname if it is no + * elf/dl-close.c (_dl_close): Don't free l_libname if it is not allocated separately. * elf/dl-load.c (_dl_map_object_from_fd): Likewise. diff --git a/linuxthreads/sysdeps/pthread/timer_delete.c b/linuxthreads/sysdeps/pthread/timer_delete.c index b7d59fe68d..24f4ffed3c 100644 --- a/linuxthreads/sysdeps/pthread/timer_delete.c +++ b/linuxthreads/sysdeps/pthread/timer_delete.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2000 Free Software Foundation, Inc. +/* Copyright (C) 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Kaz Kylheku . @@ -41,7 +41,7 @@ timer_delete (timerid) __set_errno (EINVAL); else { - if (timer->armed) + if (timer->armed && timer->thread != NULL) { struct thread_node *thread = timer->thread; assert (thread != NULL); diff --git a/linuxthreads/sysdeps/pthread/timer_settime.c b/linuxthreads/sysdeps/pthread/timer_settime.c index e6c35b4fcf..2f187fd18e 100644 --- a/linuxthreads/sysdeps/pthread/timer_settime.c +++ b/linuxthreads/sysdeps/pthread/timer_settime.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2000 Free Software Foundation, Inc. +/* Copyright (C) 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Kaz Kylheku . @@ -118,7 +118,8 @@ timer_settime (timerid, flags, value, ovalue) /* Only need to wake up the thread if timer is inserted at the head of the queue. */ - need_wakeup = __timer_thread_queue_timer (thread, timer); + if (thread != NULL) + need_wakeup = __timer_thread_queue_timer (thread, timer); timer->armed = 1; } diff --git a/rt/Makefile b/rt/Makefile index 47ce1fbe84..df766f46a1 100644 --- a/rt/Makefile +++ b/rt/Makefile @@ -54,6 +54,10 @@ include ../Rules $(objpfx)librt.so: $(common-objpfx)libc.so $(common-objpfx)libc_nonshared.a \ $(shared-thread-library) +ifeq (yes,$(have-thread-library)) +LDFLAGS-rt.so += -Wl,-F,lib$(libprefix)$(patsubst lib%.so,%,$(notdir $(shared-thread-library))).so$($(notdir $(shared-thread-library))-version) +endif + ifeq (yes,$(build-shared)) $(addprefix $(objpfx),$(tests)): $(objpfx)librt.so $(shared-thread-library) else