diff options
-rw-r--r-- | libpthread/nptl_db/Makefile | 106 | ||||
-rw-r--r-- | libpthread/nptl_db/td_symbol_list.c | 2 | ||||
-rw-r--r-- | libpthread/nptl_db/td_ta_new.c | 4 | ||||
-rw-r--r-- | libpthread/nptl_db/thread_dbP.h | 4 |
4 files changed, 55 insertions, 61 deletions
diff --git a/libpthread/nptl_db/Makefile b/libpthread/nptl_db/Makefile index c1c4d6d8a..7fa3daa9a 100644 --- a/libpthread/nptl_db/Makefile +++ b/libpthread/nptl_db/Makefile @@ -1,63 +1,47 @@ -# Copyright (C) 2002, 2003 Free Software Foundation, Inc. -# This file is part of the GNU C Library. - -# The GNU C Library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. - -# The GNU C Library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. - -# You should have received a copy of the GNU Lesser General Public -# License along with the GNU C Library; if not, write to the Free -# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -# 02111-1307 USA. - -# Makefile for NPTL debug library subdirectory of GNU C Library. - -subdir := nptl_db - -nptl_db-version = 1.0 - -extra-libs = libthread_db -extra-libs-others := $(extra-libs) - -headers = thread_db.h - -libthread_db-routines = td_init td_log td_ta_new td_ta_delete \ - td_ta_get_nthreads td_ta_get_ph \ - td_ta_map_id2thr td_ta_map_lwp2thr \ - td_ta_thr_iter td_ta_tsd_iter \ - td_thr_get_info td_thr_getfpregs td_thr_getgregs \ - td_thr_getxregs td_thr_getxregsize td_thr_setfpregs \ - td_thr_setgregs td_thr_setprio td_thr_setsigpending \ - td_thr_setxregs td_thr_sigsetmask td_thr_tsd \ - td_thr_validate td_thr_dbsuspend td_thr_dbresume \ - td_ta_setconcurrency td_ta_enable_stats \ - td_ta_reset_stats td_ta_get_stats td_ta_event_addr \ - td_thr_event_enable td_thr_set_event \ - td_thr_clear_event td_thr_event_getmsg \ - td_ta_set_event td_ta_event_getmsg \ - td_ta_clear_event td_symbol_list \ - td_thr_tlsbase td_thr_tls_get_addr \ - fetch-value - -libthread_db-inhibit-o = $(filter-out .os,$(object-suffixes)) - -# The ps_* callback functions are not defined. -libthread_db.so-no-z-defs = yes - -distribute = thread_dbP.h shlib-versions proc_service.h db_info.c structs.def -#include ../Rules - -# Depend on libc.so so a DT_NEEDED is generated in the shared objects. -# This ensures they will load libc.so for needed symbols if loaded by -# a statically-linked program that hasn't already loaded it. -$(objpfx)libthread_db.so: $(common-objpfx)libc.so \ - $(common-objpfx)libc_nonshared.a +# Makefile for uClibc's NPTL pthread debug library +# +# Copyright (C) 2005 Steven J. Hill <sjhill@realitydiluted.com> +# +# This program is free software; you can redistribute it and/or modify it under +# the terms of the GNU Library General Public License as published by the Free +# Software Foundation; either version 2 of the License, or (at your option) any +# later version. +# +# This program is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more +# details. +# +# You should have received a copy of the GNU Library General Public License +# along with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# Makefile for uClibc + +TOPDIR=../../ +include $(TOPDIR)Rules.mak + +LIBTHREAD_DB=../libthread_db.a + +CFLAGS := $(CFLAGS:-O0=-O2) -DNOT_IN_libc=1 -DIS_IN_libthread_db=1 \ + -std=gnu99 -DLIBPTHREAD_SO="\"libpthread.so.$(MAJOR_VERSION)\"" + +CFLAGS += -I$(PTDIR)compat \ + -I$(PTDIR)sysdeps/unix/sysv/linux/$(TARGET_ARCH) \ + -I$(PTDIR)sysdeps/$(TARGET_ARCH) \ + -I$(PTDIR)sysdeps/unix/sysv/linux \ + -I$(PTDIR)sysdeps/pthread \ + -I$(PTDIR)sysdeps/generic + +OBJS=$(patsubst %.c, %.o, $(filter-out db_info.c, $(wildcard *.c))) + +all: $(LIBTHREAD_DB) + +$(LIBTHREAD_DB) ar-target: $(OBJS) + $(AR) $(ARFLAGS) $(LIBTHREAD_DB) $(OBJS) + +$(OBJS): %.o : %.c + $(CC) $(CFLAGS) -c $< -o $@ + $(STRIPTOOL) -x -R .note -R .comment $*.o clean: - $(RM) *~ *.[ao] + $(RM) *.[oa] *~ core diff --git a/libpthread/nptl_db/td_symbol_list.c b/libpthread/nptl_db/td_symbol_list.c index 5d6c94e5b..04aed6787 100644 --- a/libpthread/nptl_db/td_symbol_list.c +++ b/libpthread/nptl_db/td_symbol_list.c @@ -19,7 +19,9 @@ 02111-1307 USA. */ #include <assert.h> +#ifndef __UCLIBC__ #include <gnu/lib-names.h> +#endif #include "thread_dbP.h" diff --git a/libpthread/nptl_db/td_ta_new.c b/libpthread/nptl_db/td_ta_new.c index f84049af3..152c27b5e 100644 --- a/libpthread/nptl_db/td_ta_new.c +++ b/libpthread/nptl_db/td_ta_new.c @@ -21,7 +21,11 @@ #include <stddef.h> #include <stdlib.h> #include <string.h> +#ifdef __UCLIBC__ +#include <../nptl/version.h> +#else #include <version.h> +#endif #include "thread_dbP.h" diff --git a/libpthread/nptl_db/thread_dbP.h b/libpthread/nptl_db/thread_dbP.h index c53d1ed94..c3d263b0c 100644 --- a/libpthread/nptl_db/thread_dbP.h +++ b/libpthread/nptl_db/thread_dbP.h @@ -30,6 +30,10 @@ #include "thread_db.h" #include "../nptl/pthreadP.h" /* This is for *_BITMASK only. */ +#ifdef __UCLIBC__ +#define __alloca alloca +#endif + /* Indeces for the symbol names. */ enum { |