1# Makefile for uClibc 2# 3# Copyright (C) 2000-2008 Erik Andersen <andersen@uclibc.org> 4# 5# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. 6# 7 8subdirs += libpthread/linuxthreads_db 9 10# Get the thread include dependencies and shared object name 11CFLAGS-libpthread/linuxthreads_db := -DNOT_IN_libc -DLIBPTHREAD_SO="\"libpthread.so.$(ABI_VERSION)\"" 12 13LDFLAGS-libthread_db.so := $(LDFLAGS_NOSTRIP) $(if $(call check_ld,--warn-unresolved-symbols),-Wl$(comma)--warn-unresolved-symbols) 14ifeq ($(DOSTRIP),y) 15LDFLAGS-libthread_db.so += -Wl,-s 16endif 17 18LIBS-libthread_db.so := $(LIBS) 19 20libthread_db_FULL_NAME := libthread_db-$(VERSION).so 21 22libthread_db_DIR := $(top_srcdir)libpthread/linuxthreads_db 23libthread_db_OUT := $(top_builddir)libpthread/linuxthreads_db 24 25libthread_db_SRC := $(wildcard $(libthread_db_DIR)/*.c) 26 27libthread_db_OBJ := $(patsubst $(libthread_db_DIR)/%.c,$(libthread_db_OUT)/%.o,$(libthread_db_SRC)) 28 29libthread_db-so-y := $(libthread_db_OBJ:.o=.os) 30ifeq ($(DOPIC),y) 31libthread_db-a-y := $(libthread_db-so-y) 32else 33libthread_db-a-y := $(libthread_db_OBJ) 34endif 35 36lib-a-$(PTHREADS_DEBUG_SUPPORT) += $(top_builddir)lib/libthread_db.a 37lib-so-$(PTHREADS_DEBUG_SUPPORT) += $(top_builddir)lib/libthread_db.so 38 39ifeq ($(DOPIC),y) 40$(top_builddir)lib/libthread_db.so: $(top_builddir)lib/libthread_db.a $(libc.depend) 41else 42$(top_builddir)lib/libthread_db.so: $(libthread_db_OUT)/libthread_db_so.a $(libc.depend) 43endif 44 $(call link.so,$(libthread_db_FULL_NAME),1) 45 46$(libthread_db_OUT)/libthread_db_so.a: $(libthread_db-so-y) 47 $(Q)$(RM) $@ 48 $(do_ar) 49 50$(libthread_db_OUT)/libthread_db.oS: $(libthread_db_SRC) 51 $(Q)$(RM) $@ 52 $(compile-m) 53 54$(top_builddir)lib/libthread_db.a: $(libthread_db-a-y) 55 $(Q)$(INSTALL) -d $(dir $@) 56 $(Q)$(RM) $@ 57 $(do_ar) 58 59$(top_builddir)include/thread_db.h: 60 $(do_ln) $(call rel_srcdir)$(PTDIR)_db/$(@F) $@ 61 62linuxthreads_db_headers := $(top_builddir)include/thread_db.h 63$(linuxthreads_db_headers): $(wildcard $(addprefix $(top_builddir)include/config/linuxthreads/,old.h new.h)) 64headers-$(PTHREADS_DEBUG_SUPPORT) += $(linuxthreads_db_headers) 65 66objclean-y += CLEAN_libpthread/linuxthreads_db 67headers_clean-y += HEADERCLEAN_libpthread/linuxthreads_db 68 69HEADERCLEAN_libpthread/linuxthreads_db: 70 $(do_rm) $(linuxthreads_db_headers) 71 72CLEAN_libpthread/linuxthreads_db: 73 $(do_rm) $(addprefix $(libthread_db_OUT)/*., o os oS a) 74