summaryrefslogtreecommitdiff
path: root/libc/misc/internals/Makefile.in
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2005-10-25 22:17:39 +0000
committerPeter S. Mazinger <ps.m@gmx.net>2005-10-25 22:17:39 +0000
commita80fc77b658a7883df95ac41ad83ac9ff7c8ff07 (patch)
tree3edbcb812b876e0ba1424b229d50e9c04a2b0d4a /libc/misc/internals/Makefile.in
parent7ce8f67d27885ea6b1cba2c43e5edc9f1dc17f0f (diff)
All Makefile.in's. Only arm/i386/mips/powerpc/x86_64 are done, the other archs lack proper crt1. The Makefiles in extra/scripts are intended to be linked into each dir, where it is necessary to build locally.
Diffstat (limited to 'libc/misc/internals/Makefile.in')
-rw-r--r--libc/misc/internals/Makefile.in41
1 files changed, 41 insertions, 0 deletions
diff --git a/libc/misc/internals/Makefile.in b/libc/misc/internals/Makefile.in
new file mode 100644
index 000000000..de611323e
--- /dev/null
+++ b/libc/misc/internals/Makefile.in
@@ -0,0 +1,41 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000 by Lineo, inc.
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+CFLAGS-__uClibc_main.c=$(SSP_DISABLE_FLAGS)
+
+CSRC:=__uClibc_main.c tempname.c errno.c __errno_location.c __h_errno_location.c
+
+MISC_INTERNALS_DIR:=$(top_srcdir)libc/misc/internals
+MISC_INTERNALS_OUT:=$(top_builddir)libc/misc/internals
+
+MISC_INTERNALS_SRC:=$(patsubst %.c,$(MISC_INTERNALS_DIR)/%.c,$(CSRC))
+MISC_INTERNALS_OBJ:=$(patsubst %.c,$(MISC_INTERNALS_OUT)/%.o,$(CSRC))
+
+MISC_INTERNALS_OBJS:=$(MISC_INTERNALS_OBJ) $(MISC_INTERNALS_OUT)/static.o
+
+$(MISC_INTERNALS_OUT)/interp.c: $(MISC_INTERNALS_DIR)/Makefile.in
+ echo "/* Force shared libraries to know about the correct library loader */" > $@
+ echo "#include <features.h>" >> $@
+ echo "#ifdef __HAVE_ELF__" >> $@
+ echo "const char __dl_ldso__[] __attribute__ ((section " \
+ "(\".interp\"))) =\""$(SHARED_LIB_LOADER_PREFIX)/$(UCLIBC_LDSO)"\";" >> $@
+ echo "#endif" >> $@
+
+libc-a-y+=$(MISC_INTERNALS_OBJS)
+libc-a-pic-y+=$(MISC_INTERNALS_OBJS:.o=.os)
+# this is OBJ, not OBJS !!!, static does not go into .so
+libc-so-y+=$(MISC_INTERNALS_OBJ:.o=.os)
+other-y+=$(MISC_INTERNALS_OUT)/interp.os
+
+libc-multi-y+=$(filter-out $(MISC_INTERNALS_DIR)/__uClibc_main.c,$(MISC_INTERNALS_SRC))
+libc-nomulti-y+=$(MISC_INTERNALS_OUT)/__uClibc_main.o
+
+objclean-y+=misc_internals_objclean
+
+misc_internals_objclean:
+ $(RM) $(MISC_INTERNALS_OUT)/{*.{o,os},interp.c}