summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile1
-rw-r--r--Rules.mak18
-rw-r--r--libc/inet/Makefile8
-rw-r--r--libc/inet/rpc/Makefile3
-rw-r--r--libc/misc/internals/Makefile4
-rw-r--r--libc/misc/pthread/Makefile10
-rw-r--r--libc/misc/syslog/Makefile2
-rw-r--r--libc/sysdeps/linux/mips/Makefile1
-rw-r--r--libpthread/nptl/sysdeps/mips/Makefile54
-rw-r--r--libpthread/nptl_db/Makefile5
10 files changed, 67 insertions, 39 deletions
diff --git a/Makefile b/Makefile
index b7f4d8f70..4cbe4c907 100644
--- a/Makefile
+++ b/Makefile
@@ -350,6 +350,7 @@ clean:
$(MAKE) -C libc/unistd clean
$(MAKE) -C libc/sysdeps/linux/common clean
$(MAKE) -C extra/locale clean
+ $(MAKE) -C libpthread clean
@set -e; \
for i in `(cd $(TOPDIR)/libc/sysdeps/linux/common/sys; ls *.h)` ; do \
$(RM) include/sys/$$i; \
diff --git a/Rules.mak b/Rules.mak
index 8d47f4eb9..553c4936b 100644
--- a/Rules.mak
+++ b/Rules.mak
@@ -274,6 +274,24 @@ else
LDFLAGS := $(CPU_LDFLAGS-y) -s -shared --warn-common --warn-once -z combreloc
endif
+#
+# Thread includes are needed to compile some files.
+#
+ifeq ($(PTHREADS_NATIVE),y)
+PTDIR := $(TOPDIR)/libpthread/nptl/
+PT_INCLUDES := -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 \
+ -include $(PTDIR)compat/libc-symbols.h
+else
+PTDIR := $(TOPDIR)/libpthread/linuxthreads/
+PT_INCLUDES := -I$(PTDIR)sysdeps/$(TARGET_ARCH) \
+ -I$(PTDIR)sysdeps/pthread
+endif
+export PT_INCLUDES
+
ifeq ($(UCLIBC_BUILD_RELRO),y)
LDFLAGS+=-z relro
endif
diff --git a/libc/inet/Makefile b/libc/inet/Makefile
index e7018db7c..09b274dab 100644
--- a/libc/inet/Makefile
+++ b/libc/inet/Makefile
@@ -66,19 +66,19 @@ $(OBJ_LIST): $(OBJS)
echo $(patsubst %, inet/%, $(OBJS)) > $(OBJ_LIST)
$(MOBJ): $(MSRC)
- $(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+ $(CC) $(CFLAGS) $(PT_INCLUDES) -DL_$* $< -c -o $*.o
$(STRIPTOOL) -x -R .note -R .comment $*.o
$(MOBJ2): $(MSRC2)
- $(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+ $(CC) $(CFLAGS) $(PT_INCLUDES) -DL_$* $< -c -o $*.o
$(STRIPTOOL) -x -R .note -R .comment $*.o
$(MOBJ3): $(MSRC3)
- $(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+ $(CC) $(CFLAGS) $(PT_INCLUDES) -DL_$* $< -c -o $*.o
$(STRIPTOOL) -x -R .note -R .comment $*.o
$(COBJS): %.o : %.c
- $(CC) $(CFLAGS) -c $< -o $@
+ $(CC) $(CFLAGS) $(PT_INCLUDES) -c $< -o $@
$(STRIPTOOL) -x -R .note -R .comment $*.o
clean: subdirs_clean
diff --git a/libc/inet/rpc/Makefile b/libc/inet/rpc/Makefile
index 352e9a28b..49adb7e84 100644
--- a/libc/inet/rpc/Makefile
+++ b/libc/inet/rpc/Makefile
@@ -23,7 +23,6 @@
TOPDIR=../../../
include $(TOPDIR)Rules.mak
-CFLAGS+=-I$(TOPDIR)libpthread/linuxthreads/sysdeps/pthread
ifeq ($(strip $(UCLIBC_HAS_FULL_RPC)),y)
CSRC :=auth_none.c auth_unix.c authunix_prot.c bindresvport.c \
@@ -58,7 +57,7 @@ $(OBJ_LIST): $(OBJS)
echo $(patsubst %, inet/rpc/%, $(OBJS)) > $(OBJ_LIST)
$(COBJS): %.o : %.c
- $(CC) $(CFLAGS) -c $< -o $@
+ $(CC) $(CFLAGS) $(PT_INCLUDES) -c $< -o $@
$(STRIPTOOL) -x -R .note -R .comment $*.o
clean:
diff --git a/libc/misc/internals/Makefile b/libc/misc/internals/Makefile
index 23816b38d..fa34ccf89 100644
--- a/libc/misc/internals/Makefile
+++ b/libc/misc/internals/Makefile
@@ -45,11 +45,11 @@ interp.c: Makefile
echo "#endif" >> interp.c
interp.o: interp.c
- $(CC) $(CFLAGS) -c $< -o $@
+ $(CC) $(CFLAGS) $(PT_INCLUDES) -c $< -o $@
$(STRIPTOOL) -x -R .note -R .comment $*.o
$(COBJS): %.o : %.c
- $(CC) $(CFLAGS) -c $< -o $@
+ $(CC) $(CFLAGS) $(PT_INCLUDES) -c $< -o $@
$(STRIPTOOL) -x -R .note -R .comment $*.o
clean:
diff --git a/libc/misc/pthread/Makefile b/libc/misc/pthread/Makefile
index 0e432d308..cee80a9ac 100644
--- a/libc/misc/pthread/Makefile
+++ b/libc/misc/pthread/Makefile
@@ -19,15 +19,7 @@
TOPDIR=../../../
include $(TOPDIR)Rules.mak
-PTDIR = $(TOPDIR)libpthread/linuxthreads/
-SYSDEPINC = -I$(PTDIR)sysdeps/unix/sysv/linux \
- -I$(PTDIR)sysdeps/pthread \
- -I$(PTDIR)sysdeps/unix/sysv \
- -I$(PTDIR)sysdeps/unix/unix \
- -I$(PTDIR)sysdeps/$(TARGET_ARCH) \
- -I$(PTDIR)sysdeps \
- -I$(TOPDIR)libc/sysdeps/linux/$(TARGET_ARCH)
-CFLAGS += $(SYSDEPINC) -D_GNU_SOURCE
+CFLAGS += $(PT_INCLUDES)
CSRC=no-tsd.c weaks.c
COBJS=$(patsubst %.c,%.o, $(CSRC))
diff --git a/libc/misc/syslog/Makefile b/libc/misc/syslog/Makefile
index 35e755e40..3ddd2737b 100644
--- a/libc/misc/syslog/Makefile
+++ b/libc/misc/syslog/Makefile
@@ -36,7 +36,7 @@ $(OBJ_LIST): $(OBJS)
echo $(patsubst %, misc/syslog/%, $(OBJS)) > $(OBJ_LIST)
$(COBJS): %.o : %.c
- $(CC) $(CFLAGS) -c $< -o $@
+ $(CC) $(CFLAGS) $(PT_INCLUDES) -c $< -o $@
$(STRIPTOOL) -x -R .note -R .comment $*.o
clean:
diff --git a/libc/sysdeps/linux/mips/Makefile b/libc/sysdeps/linux/mips/Makefile
index dda217b46..bd905441a 100644
--- a/libc/sysdeps/linux/mips/Makefile
+++ b/libc/sysdeps/linux/mips/Makefile
@@ -89,3 +89,4 @@ clean:
$(RM) bits/sysnum.h
$(RM) $(TOPDIR)/include/fpu_control.h
$(RM) $(TOPDIR)/include/sgidefs.h
+ $(RM) $(TOPDIR)/include/sysdep.h
diff --git a/libpthread/nptl/sysdeps/mips/Makefile b/libpthread/nptl/sysdeps/mips/Makefile
index d0c59a509..29ee02c5a 100644
--- a/libpthread/nptl/sysdeps/mips/Makefile
+++ b/libpthread/nptl/sysdeps/mips/Makefile
@@ -1,25 +1,39 @@
-# Copyright (C) 2005 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
+# Makefile for uClibc's NPTL pthread 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.
+# Copyright (C) 2005 Steven J. Hill <sjhill@realitydiluted.com>
#
-# 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.
+# 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.
#
-# 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.
+# 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
+
+#
+# FIX ME: We should probably be including 'nptl-sysdep.S' which needs
+# the new '__syscall_error' function for per-thread 'errno'. Maybe
+# this work and maybe it will not.
+#
+SOBJS = $(patsubst %.S,%.o, $(filter-out nptl-sysdep.S, $(wildcard *.S)))
+
+OBJS = $(SOBJS)
+
+all: $(OBJS)
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
+$(SOBJS): %.o : %.S
+ echo $(PTDIR)
+ $(CC) $(ASFLAGS) -c $< -o $@
-ifeq ($(subdir),nptl)
-libpthread-sysdep_routines += nptl-sysdep
-endif
+clean:
+ $(RM) *.[oa] *~ core
diff --git a/libpthread/nptl_db/Makefile b/libpthread/nptl_db/Makefile
index 5c73ff28f..c1c4d6d8a 100644
--- a/libpthread/nptl_db/Makefile
+++ b/libpthread/nptl_db/Makefile
@@ -51,10 +51,13 @@ libthread_db-inhibit-o = $(filter-out .os,$(object-suffixes))
libthread_db.so-no-z-defs = yes
distribute = thread_dbP.h shlib-versions proc_service.h db_info.c structs.def
-include ../Rules
+#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
+
+clean:
+ $(RM) *~ *.[ao]