1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# Makefile for uClibc
#
# Copyright (C) 2003 Paul Mundt <lethal@linux-sh.org>
# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
#
# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
#
CFLAGS+=$(SSP_ALL_CFLAGS)
# This stuff will not compile without at least -O1
CFLAGS:=$(CFLAGS:-O0=-O1)
LDFLAGS:=$(LDFLAGS_NOSTRIP)
ifeq ($(UCLIBC_CTOR_DTOR),y)
SHARED_START_FILES:=$(top_builddir)lib/crti.o $(LIBGCC_DIR)crtbeginS.o
SHARED_END_FILES:=$(LIBGCC_DIR)crtendS.o $(top_builddir)lib/crtn.o
endif
ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
STRIP_FLAGS:=-X --strip-debug -R .note -R .comment
endif
#DOMULTI=n
LIB_NAME:=libpthread
libpthread_DIR:=$(top_srcdir)libpthread/linuxthreads
libpthread_OUT:=$(top_builddir)libpthread/linuxthreads
ARCH_CFLAGS:=$(CFLAGS)
-include $(libpthread_DIR)/sysdeps/$(TARGET_ARCH)/Makefile.arch
CFLAGS:=$(ARCH_CFLAGS)
libpthread_SRC:=$(wildcard $(libpthread_DIR)/*.c)
ifneq ($(UCLIBC_HAS_XLOCALE),y)
libpthread_SRC:=$(filter-out $(libpthread_DIR)/locale.c,$(libpthread_SRC))
endif
ifneq ($(DOMULTI),n)
# full list, we added the biggest one to IMA
#libpthread_NO_MULTI:=cancel.c condvar.c join.c manager.c mutex.c oldsemaphore.c pt-machine.c pthread.c rwlock.c semaphore.c specific.c spinlock.c
libpthread_NO_MULTI:=cancel.c condvar.c join.c manager.c mutex.c oldsemaphore.c pt-machine.c rwlock.c semaphore.c specific.c spinlock.c
libpthread_SRC:=$(filter-out $(patsubst %.c,$(libpthread_DIR)/%.c,$(libpthread_NO_MULTI)),$(libpthread_SRC))
endif
# remove generic sources, if arch specific version is present
ifneq ($(strip $(libpthread_ARCH_SRC)),)
libpthread_SRC:=$(filter-out $(patsubst %.c,$(libpthread_DIR)/%.c,$(notdir $(libpthread_ARCH_SRC))),$(libpthread_SRC))
endif
libpthread_OBJ:=$(patsubst $(libpthread_DIR)/%.c,$(libpthread_OUT)/%.o,$(libpthread_SRC))
libpthread-a-$(UCLIBC_HAS_THREADS)+=$(libpthread_OBJ)
libpthread-so-$(UCLIBC_HAS_THREADS)+=$(libpthread_OBJ:.o=.os)
libpthread-multi-$(UCLIBC_HAS_THREADS)+=$(libpthread_SRC)
libpthread-nomulti-$(UCLIBC_HAS_THREADS)+=$(patsubst %.c,$(libpthread_OUT)/%.o,$(libpthread_NO_MULTI))
objclean-y+=libpthread_clean
lib-a-$(UCLIBC_HAS_THREADS)+=$(top_builddir)lib/libpthread.a
lib-so-$(UCLIBC_HAS_THREADS)+=$(top_builddir)lib/libpthread.so
|