1 # Copyright (C) 2002-2023 Free Software Foundation, Inc.
2 # This file is part of the GNU C Library.
4 # The GNU C Library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2.1 of the License, or (at your option) any later version.
9 # The GNU C Library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 # Lesser General Public License for more details.
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with the GNU C Library; if not, see
16 # <https://www.gnu.org/licenses/>.
18 # Makefile for NPTL debug library subdirectory of GNU C Library.
24 extra-libs
= libthread_db
25 extra-libs-others
:= $(extra-libs
)
27 headers
= proc_service.h thread_db.h sys
/procfs.h
29 libthread_db-routines
= td_init td_log td_ta_new td_ta_delete \
30 td_ta_get_nthreads td_ta_get_ph \
31 td_ta_map_id2thr td_ta_map_lwp2thr \
32 td_ta_thr_iter td_ta_tsd_iter \
33 td_thr_get_info td_thr_getfpregs td_thr_getgregs \
34 td_thr_getxregs td_thr_getxregsize td_thr_setfpregs \
35 td_thr_setgregs td_thr_setprio td_thr_setsigpending \
36 td_thr_setxregs td_thr_sigsetmask td_thr_tsd \
37 td_thr_validate td_thr_dbsuspend td_thr_dbresume \
38 td_ta_setconcurrency td_ta_enable_stats \
39 td_ta_reset_stats td_ta_get_stats td_ta_event_addr \
40 td_thr_event_enable td_thr_set_event \
41 td_thr_clear_event td_thr_event_getmsg \
42 td_ta_set_event td_ta_event_getmsg \
43 td_ta_clear_event td_symbol_list \
44 td_thr_tlsbase td_thr_tls_get_addr \
47 libthread_db-inhibit-o
= $(filter-out .os
,$(object-suffixes
))
49 # The ps_* callback functions are not defined.
50 libthread_db.so-no-z-defs
= yes
52 # This is a hack. This is not the correct solution. When this glibc
53 # is tested, the gdb used could be loaded by the host glibc, which
54 # may not support DT_RELR, and report a failure instead of unsupported.
55 # For now, build this without DT_RELR support to avoid this situation.
56 libthread_db.so-no-dt-relr
= yes
58 tests-special
+= $(objpfx
)db-symbols.out
62 $(objpfx
)db-symbols.out
: $(objpfx
)db-symbols.v.i \
63 $(objpfx
)libc.symlist-private
64 LC_ALL
=C
$(AWK
) -f
$^
> $@
; \
67 $(objpfx
)db-symbols.v.i
: db-symbols.awk
69 $(objpfx
)libc.symlist-private
: $(..
)scripts
/abilist.awk \
70 $(common-objpfx
)libc.dynsym
71 LC_ALL
=C
$(AWK
) -v include_private
=1 -f
$^
> $@T