]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/ldso/ldso/Makefile
update
[l4.git] / l4 / pkg / ldso / ldso / Makefile
1 PKGDIR ?= ..
2 L4DIR  ?= $(PKGDIR)/../..
3
4 CON_DIR := $(PKGDIR)/../uclibc/lib/contrib/uclibc/ldso
5 PTH_DIR := $(PKGDIR)/../uclibc/lib/libpthread
6
7 DIR_amd64 := x86_64
8 DIR_x86   := i386
9 DIR_arm   := arm
10 DIR_ppc32 := powerpc
11 DIR_sparc := sparc
12
13
14 vpath %.c $(CON_DIR)/ldso
15 vpath %.S $(CON_DIR)/ldso/$(DIR_$(ARCH))
16
17 PRIVATE_INCDIR-x86 := $(CON_DIR)/../libc
18 PRIVATE_INCDIR := $(PRIVATE_INCDIR-$(ARCH)) \
19                   $(CON_DIR)/ldso/$(DIR_$(ARCH)) \
20                   $(SRC_DIR)           \
21                   $(CON_DIR)/include \
22                   $(PTH_DIR)/src \
23                   $(PTH_DIR)/src/sysdeps/$(DIR_$(ARCH))
24
25
26 TARGET := libld-l4.so
27 SRC_C  := ldso.c fixup.c
28 SRC_CC := syscalls.cc vfs.cc
29 SRC_S  := resolve.S
30
31 CPPFLAGS := -DNOT_IN_libc -DIS_IN_rtld \
32             -DLDSO_ELFINTERP=\"$(DIR_$(ARCH))/elfinterp.c\" \
33             -include libc-symbols.h -DUCLIBC_LDSO=\"libld-l4.so\" \
34             -DUCLIBC_RUNTIME_PREFIX=\"/\" \
35             -D__LDSO_SEARCH_INTERP_PATH__=1 \
36             -DIS_IN_rtld -D__LIBDL_SHARED__ -DSHARED
37
38 DEFINES_x86-l4f += -DUSE_TLS=1 -DUSE___THREAD=1
39
40
41
42 LDFLAGS  =  -Bsymbolic -Bstatic --warn-common --sort-common \
43             --no-undefined -e _start -z defs -z now \
44             --discard-locals --discard-all   \
45             --gc-sections -ll4sys-direct $(GCCLIB)
46
47 CRT0 :=
48 CRTN :=
49
50
51 include $(L4DIR)/mk/lib.mk
52
53 ldso.1.o: ldso.o
54         $(OBJCOPY) --weaken $< $@
55
56 CXXFLAGS := -DL4_NO_RTTI -fno-rtti -fno-exceptions -O99 -fvisibility=hidden \
57             -fno-threadsafe-statics $(GCCNOSTACKPROTOPT)
58
59 CPPFLAGS := $(filter-out -DL4SYS_USE_UTCB_WRAP=1, $(CPPFLAGS))
60
61 L4_LIBS :=