OSDN Git Service

Ok, seems this _must_ be compiled as PIC code.
[uclinux-h8/uClibc.git] / ldso / ldso / Makefile
1 TOPDIR=../../
2 include $(TOPDIR)Rules.mak
3 include $(TOPDIR)/ld.so-1/Config.mk
4
5 DIRS = $(TARGET_ARCH) libdl
6
7 CFLAGS += -DNO_UNDERSCORE -DVERBOSE_DLINKER
8 CFLAGS += -DUSE_CACHE -fPIC -D__PIC__ #-funroll-loops
9
10 CSRC= boot1.c hash.c readelflib1.c vsprintf.c
11 COBJS=$(patsubst %.c,%.o, $(CSRC))
12 OBJS=$(COBJS)
13
14 DLINKER = ld-linux-uclibc.so
15
16 ELF_LDFLAGS=--shared # using GNU ld
17
18 ifneq ($(DIRS),)
19 lib realclean clean::
20         @set -e; for i in $(DIRS); do \
21           echo making $@ in $$i; \
22           $(MAKE) -C $$i $@; \
23         done;
24 endif
25
26 lib:: $(OBJS)
27         $(LD) -e _dl_boot $(ELF_LDFLAGS) -o $(DLINKER).$(LDSO_VMAJOR) \
28           -soname $(DLINKER).$(LDSO_VMAJOR) *.o
29
30 $(COBJS): %.o : %.c
31         $(CC) -I. -I./$(TARGET_ARCH) $(CFLAGS) -c $< -o $@
32         $(STRIPTOOL) -x -R .note -R .comment $*.o
33
34 realclean::
35         $(RM) -f .depend $(DLINKER) core *.o *.a *.s *.i tmp_make foo *~
36
37 clean::
38         $(RM) -f $(DLINKER) core *.o *.a *.s *.i tmp_make foo *~
39