summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/libpthread/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/libpthread/Makefile')
-rw-r--r--mdk-stage1/dietlibc/libpthread/Makefile139
1 files changed, 139 insertions, 0 deletions
diff --git a/mdk-stage1/dietlibc/libpthread/Makefile b/mdk-stage1/dietlibc/libpthread/Makefile
new file mode 100644
index 000000000..06420f43a
--- /dev/null
+++ b/mdk-stage1/dietlibc/libpthread/Makefile
@@ -0,0 +1,139 @@
+all: libpthread.a
+
+ARCH=$(shell uname -m | sed 's/i[4-9]86/i386/')
+
+CFLAGS=-pipe
+CROSS=
+
+CC=gcc
+
+VPATH=../$(ARCH)/
+
+PTHREAD_OBJS = \
+ __testandset.o \
+ \
+ thread_internal.o \
+ thread_key.o \
+ \
+ pthread_once.o pthread_spinlock.o \
+ \
+ pthread_create.o pthread_detach.o \
+ pthread_join.o pthread_self.o \
+ pthread_exit.o \
+ \
+ pthread_cleanup_push.o \
+ pthread_cleanup_pop.o \
+ \
+ pthread_attr_getdetachstate.o \
+ pthread_attr_getinheritsched.o \
+ pthread_attr_getschedparam.o \
+ pthread_attr_getschedpolicy.o \
+ pthread_attr_getscope.o \
+ pthread_attr_getstackaddr.o \
+ pthread_attr_getstacksize.o \
+ pthread_attr_init.o \
+ pthread_attr_setdetachstate.o \
+ pthread_attr_setinheritsched.o \
+ pthread_attr_setschedparam.o \
+ pthread_attr_setschedpolicy.o \
+ pthread_attr_setscope.o \
+ pthread_attr_setstackaddr.o \
+ pthread_attr_setstacksize.o \
+ \
+ pthread_cancel.o pthread_setcancelstate.o \
+ pthread_setcanceltype.o pthread_testcancel.o \
+ \
+ pthread_mutex_init.o \
+ pthread_mutex_destroy.o \
+ pthread_mutex_lock.o \
+ pthread_mutex_trylock.o \
+ pthread_mutex_unlock.o \
+ \
+ pthread_mutexattr_getkind_np.o \
+ pthread_mutexattr_init.o \
+ pthread_mutexattr_setkind_np.o \
+ \
+ pthread_condattr.o \
+ pthread_cond_broadcast.o \
+ pthread_cond_destroy.o \
+ pthread_cond_init.o \
+ pthread_cond_signal.o \
+ pthread_cond_timedwait.o \
+ pthread_cond_wait.o \
+ \
+ pthread_key_create.o \
+ pthread_key_delete.o \
+ pthread_getspecific.o \
+ pthread_setspecific.o \
+ \
+ pthread_atfork.o \
+ pthread_sys_alloc.o \
+ pthread_sys_close.o \
+ pthread_sys_create.o \
+ pthread_sys_fcntl.o \
+ pthread_sys_fsync.o \
+ pthread_sys_nanosleep.o \
+ pthread_sys_logging.o \
+ pthread_sys_open.o \
+ pthread_sys_pause.o \
+ pthread_sys_read.o \
+ pthread_sys_sigsuspend.o \
+ pthread_sys_tcdrain.o \
+ pthread_sys_waitpid.o \
+ pthread_sys_write.o
+
+%.o : %.c
+ $(CC) $(CFLAGS) -c -o $@ $?
+
+include ../$(ARCH)/Makefile.add
+
+ifeq ($(CFLAGS),-pipe)
+CFLAGS+=-O -fomit-frame-pointer
+endif
+
+#CFLAGS = -g
+CFLAGS += -Wall
+
+CFLAGS += -I.. -I../include -Wall
+
+PWD=$(shell pwd)
+
+.SUFFIXES:
+.SUFFIXES: .S .c
+
+% :: %,v
+
+%.o: %.S
+ $(CROSS)$(CC) -I. -Iinclude $(CFLAGS) -c $<
+
+%.o: %.c
+ $(CROSS)$(CC) -I. -Iinclude $(CFLAGS) -c $<
+# $(CROSS)strip -x -R .comment -R .note $@
+
+libpthread.a: $(PTHREAD_OBJS)
+ ar cr $@ $^
+
+libpthread.so: libpthread.a
+ $(CROSS)ld -whole-archive -shared -o $@ $^
+
+
+clean:
+ $(RM) *.o *.a *.so *.out *~
+
+exports: libpthread.a
+ nm -g libpthread.a | grep -w T | awk '{ print $$3 }' | sort -u > exports
+
+.PHONY: test.out
+
+test.out: test.o libpthread.a $(LIBS)
+ $(CROSS)$(CC) -g $(CFLAGS) -nostdlib ../bin-$(ARCH)/start.o -o $@ $^ ../bin-$(ARCH)/dietlibc.a -lgcc
+
+
+.PHONY: sparc ppc mips arm alpha i386
+
+sparc ppc alpha i386:
+ $(MAKE) ARCH=$@ CROSS=$@-linux- all t libdietc.so
+
+mips arm:
+ $(MAKE) ARCH=$@ CROSS=$@-linux-gnu- all t libdietc.so
+