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.3 2003/09/18 21:22:56 dillon Exp $
5 SRCS= rtld_start.S rtld.c lockdflt.c map_object.c malloc.c \
6 xmalloc.c debug.c reloc.c prebind.c
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
13 RTLD_TS!= /bin/date +%s
14 CFLAGS+= -DRTLD_TS=${RTLD_TS}
16 .if exists(${.CURDIR}/${MACHINE_ARCH}/Makefile.inc)
17 .include "${.CURDIR}/${MACHINE_ARCH}/Makefile.inc"
20 # If LDSCRIPT is defined, we build the dynamic linker as an
21 # executable. Otherwise we build it as a shared object. We ignore
22 # LDSCRIPT if the running kernel is too old to support it.
24 KERN_OSRELDATE!= /sbin/sysctl -n kern.osreldate 2>/dev/null || echo 0
25 .if ${KERN_OSRELDATE} >= 400001
26 LDSO_IS_EXECUTABLE= yes
30 .ifdef LDSO_IS_EXECUTABLE
32 LDFLAGS+= -Wl,-T,${LDSCRIPT} -Wl,-E -Wl,-Bstatic
37 LDFLAGS+= -shared -Wl,-Bsymbolic
43 ${CC} -shared -nostdlib -o dyn_hack.so -x c /dev/null
45 .PATH: ${.CURDIR}/${MACHINE_ARCH}
47 .include <bsd.prog.mk>