Makefile revision 169960
161821Smarkm# $FreeBSD: head/libexec/rtld-elf/Makefile 169630 2007-05-16 23:24:15Z marcel $
261821Smarkm
361821Smarkm.include <bsd.own.mk>
461821Smarkm
561821SmarkmPROG?=		ld-elf.so.1
661821SmarkmSRCS=		rtld_start.S \
761821Smarkm		reloc.c rtld.c rtld_lock.c map_object.c \
861821Smarkm		malloc.c xmalloc.c debug.c libmap.c
961821SmarkmMAN=		rtld.1
1061821SmarkmCSTD?=		gnu99
1161821SmarkmCFLAGS+=	-Wall -DFREEBSD_ELF -DIN_RTLD
1261821SmarkmCFLAGS+=	-I${.CURDIR}/${MACHINE_ARCH} -I${.CURDIR}
1361821SmarkmLDFLAGS+=	-nostdlib -e .rtld_start
1461821SmarkmINSTALLFLAGS=	-C -b
1561821SmarkmPRECIOUSPROG=
1661821SmarkmBINDIR=		/libexec
1761821SmarkmSYMLINKS=	${BINDIR}/${PROG} /usr/libexec/${PROG}
1861821SmarkmMLINKS=		rtld.1 ld-elf.so.1.1 \
1961821Smarkm		rtld.1 ld.so.1
2061821Smarkm
2161821SmarkmCFLAGS+=	-fpic -DPIC
2261821SmarkmLDFLAGS+=	-shared -Wl,-Bsymbolic
2361821SmarkmDPADD=		${LIBC_PIC}
2461821SmarkmLDADD=		-lc_pic
2561821Smarkm
2661821Smarkm.if ${MACHINE_ARCH} != "ia64"
2761821Smarkm.if ${MK_SYMVER} == "yes"
2861821SmarkmLIBCDIR=	${.CURDIR}/../../lib/libc
2961821SmarkmVERSION_DEF=	${LIBCDIR}/Versions.def
3061821SmarkmSYMBOL_MAPS=	${.CURDIR}/Symbol.map
3161821SmarkmVERSION_MAP=	Version.map
3261821SmarkmLDFLAGS+=	-Wl,--version-script=${VERSION_MAP}
3361821Smarkm
3461821Smarkm${PROG}:	${VERSION_MAP}
3561821Smarkm
3661821Smarkm.if exists(${.CURDIR}/${MACHINE_ARCH}/Symbol.map)
3761821SmarkmSYMBOL_MAPS+=	${.CURDIR}/${MACHINE_ARCH}/Symbol.map
3861821Smarkm.endif
3961821Smarkm.endif
4061821Smarkm.endif
4161821Smarkm
4261821Smarkm.if exists(${.CURDIR}/${MACHINE_ARCH}/Makefile.inc)
4361821Smarkm.include "${.CURDIR}/${MACHINE_ARCH}/Makefile.inc"
4461821Smarkm.endif
4561821Smarkm
4661821Smarkm# Since moving rtld-elf to /libexec, we need to create a symlink.
4761821Smarkm# Fixup the existing binary that's there so we can symlink over it.
4861821Smarkmbeforeinstall:
4961821Smarkm.if exists(${DESTDIR}/usr/libexec/${PROG})
5061821Smarkm	-chflags noschg ${DESTDIR}/usr/libexec/${PROG}
5161821Smarkm.endif
5261821Smarkm
5361821Smarkm.PATH: ${.CURDIR}/${MACHINE_ARCH}
5461821Smarkm
5561821Smarkm.include <bsd.symver.mk>
5661821Smarkm.include <bsd.prog.mk>
5761821Smarkm