summaryrefslogtreecommitdiff
path: root/libc/misc/internals/Makefile.in
blob: 2916475ec852dd35732740a8132e8c94288aabc2 (plain)
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
# 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:=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))

STATIC_SRC:=__uClibc_main.c

$(MISC_INTERNALS_OUT)/interp.c: $(MISC_INTERNALS_DIR)/Makefile.in
	$(Q)echo "/* Force shared libraries to know about the correct library loader */" > $@
	$(Q)echo "#include <features.h>" >> $@
	$(Q)echo "#ifdef __HAVE_ELF__" >> $@
	$(Q)echo "const char __dl_ldso__[] __attribute__ ((section " \
		"(\".interp\"))) =\""$(SHARED_LIB_LOADER_PREFIX)/$(UCLIBC_LDSO)"\";" >> $@
	$(Q)echo "#endif" >> $@

libc-a-y+=$(MISC_INTERNALS_OBJ)
libc-so-y+=$(MISC_INTERNALS_OBJ:.o=.os)
libc-shared-y+=$(MISC_INTERNALS_OUT)/__uClibc_main.oS
libc-static-y+=$(patsubst %.c,$(MISC_INTERNALS_OUT)/%.o,$(STATIC_SRC))
other-y+=$(MISC_INTERNALS_OUT)/interp.os

libc-multi-y+=$(MISC_INTERNALS_SRC)

objclean-y+=misc_internals_objclean

misc_internals_objclean:
	$(RM) $(MISC_INTERNALS_OUT)/{*.{o,os,oS},interp.c}