Merge from vendor branch READLINE:
[dragonfly.git] / libexec / rtld-elf / Makefile
1 # $FreeBSD: src/libexec/rtld-elf/Makefile,v 1.10.2.6 2002/06/22 17:03:13 jdp Exp $
2 # $DragonFly: src/libexec/rtld-elf/Makefile,v 1.4 2004/01/20 21:32:46 dillon Exp $
3
4 PROG=           ld-elf.so.1
5 SRCS=           rtld_start.S rtld.c lockdflt.c map_object.c malloc.c \
6                 xmalloc.c debug.c reloc.c
7 MAN=            rtld.1
8 CFLAGS+=        -Wall -DFREEBSD_ELF -I${.CURDIR}/${MACHINE_ARCH} -I${.CURDIR}
9 LDFLAGS+=       -nostdlib -e .rtld_start
10 INSTALLFLAGS=   -fschg -C -b
11 MLINKS=         rtld.1 ld-elf.so.1.1
12
13 .if exists(${.CURDIR}/${MACHINE_ARCH}/Makefile.inc)
14 .include "${.CURDIR}/${MACHINE_ARCH}/Makefile.inc"
15 .endif
16
17 # If LDSCRIPT is defined, we build the dynamic linker as an
18 # executable.  Otherwise we build it as a shared object.  We ignore
19 # LDSCRIPT if the running kernel is too old to support it.
20 .if defined(LDSCRIPT)
21 KERN_OSRELDATE!=        /sbin/sysctl -n kern.osreldate 2>/dev/null || echo 0
22 .if ${KERN_OSRELDATE} >= 400001
23 LDSO_IS_EXECUTABLE=     yes
24 .endif
25 .endif
26
27 .ifdef LDSO_IS_EXECUTABLE
28 OBJS+=          dyn_hack.so
29 LDFLAGS+=       -Wl,-T,${LDSCRIPT} -Wl,-E -Wl,-Bstatic
30 DPADD=          ${LIBC}
31 LDADD=          -lc
32 .else
33 CFLAGS+=        -fpic -DPIC
34 LDFLAGS+=       -shared -Wl,-Bsymbolic
35 DPADD=          ${LIBC_PIC}
36 LDADD=          -lc_pic
37 .endif
38
39 dyn_hack.so:
40         ${CC} -shared -nostdlib -o dyn_hack.so -x c /dev/null
41
42 .PATH: ${.CURDIR}/${MACHINE_ARCH}
43
44 .include <bsd.prog.mk>