Makefile revision 1.64
11.64Slukem#	$NetBSD: Makefile,v 1.64 2003/10/21 10:01:20 lukem Exp $
21.5Scjs
31.11Sjonathan.include <bsd.own.mk>			# for OBJECT_FMT definition
41.57Sthorpej.include <bsd.shlib.mk>			# for SHLINKINSTALLDIR definition
51.11Sjonathan
61.47SthorpejARCHSUBDIR= ${MACHINE_CPU}
71.25SdrochnerM= ${.CURDIR}/arch/${ARCHSUBDIR}
81.23Sjonathan
91.29Sthorpej.if ((${MACHINE_ARCH} == "alpha") ||					\
101.50Sthorpej     (${MACHINE_ARCH} == "arm") || (${MACHINE_ARCH} == "armeb") ||	\
111.49Sfredette     (${MACHINE_ARCH} == "hppa") ||					\
121.29Sthorpej     (${MACHINE_ARCH} == "i386") ||					\
131.29Sthorpej     (${MACHINE_ARCH} == "m68k") ||					\
141.29Sthorpej     (${MACHINE_ARCH} == "mipsel") || (${MACHINE_ARCH} == "mipseb") ||	\
151.29Sthorpej     (${MACHINE_ARCH} == "powerpc") ||					\
161.46Sthorpej     (${MACHINE_ARCH} == "sh3eb") || (${MACHINE_ARCH} == "sh3el") ||	\
171.61Sscw     (${MACHINE_ARCH} == "sh5eb") || (${MACHINE_ARCH} == "sh5el") ||	\
181.29Sthorpej     (${MACHINE_ARCH} == "sparc") ||					\
191.32Smatt     (${MACHINE_ARCH} == "sparc64") ||					\
201.37Sfvdl     (${MACHINE_ARCH} == "x86_64") ||					\
211.32Smatt     (${MACHINE_ARCH} == "vax")) &&					\
221.29Sthorpej    ${OBJECT_FMT} == "ELF" && ${MKPIC} != "no"
231.29Sthorpej
241.29SthorpejPROG=	ld.elf_so
251.29Sthorpej
261.8Slukem# Adds SRCS, CPPFLAGS, LDFLAGS, etc.  Must go first so MD startup source
271.1Scgd# is first.
281.23Sjonathan.if exists($M/Makefile.inc)
291.23Sjonathan.include "$M/Makefile.inc"
301.3Scgd.endif
311.1Scgd
321.51SlukemCLIBOBJ!=	cd ${NETBSDSRCDIR}/lib/libc && ${PRINTOBJDIR}
331.44Stv
341.1ScgdSRCS+=	rtld.c reloc.c symbol.c malloc.c xmalloc.c xprintf.c debug.c \
351.1Scgd	map_object.c load.c search.c headers.c paths.c
361.40Sthorpej
371.57SthorpejBINDIR=${SHLINKINSTALLDIR}
381.41Slukem
391.40SthorpejCPPFLAGS+= -DLIBDIR=\"${LIBDIR}\" -D_PATH_RTLD=\"${BINDIR}/${PROG}\"
401.22SchristosCPPFLAGS+= -I${.CURDIR}
411.52SmycroftCPPFLAGS+= -DRTLD_LOADER
421.30SthorpejCPPFLAGS+= -D_RTLD_SOURCE
431.59Sjunyoung#CPPFLAGS+= -DDEBUG
441.33Smatt#CPPFLAGS+= -DRTLD_DEBUG
451.33Smatt#CPPFLAGS+= -DRTLD_DEBUG_RELOC
461.34Smycroft#DBG=	-g
471.56SmycroftDBG=	-O3 -fomit-frame-pointer
481.43Slukem
491.43Slukem.if ${SHLIBDIR} != ${LIBDIR}
501.43SlukemCPPFLAGS+= -DRTLD_DEFAULT_LIBRARY_PATH=\"${SHLIBDIR}:${LIBDIR}\"
511.43Slukem.endif
521.1Scgd
531.44StvLDADD+=	-L${CLIBOBJ} -L${DESTDIR}${LIBDIR} -non_shared -lc_pic
541.60Suwe.if ${MKPICINSTALL} != "no" 
551.60SuweDPADD+=	${LIBC_PIC}
561.60Suwe.endif
571.60SuweDPADD+=	${CLIBOBJ}/libc_pic.a
581.1Scgd
591.4SthorpejSTRIPFLAG=
601.1Scgd
611.23Sjonathan.PATH: $M
621.1Scgd
631.36Schristos${PROG}: ${OBJS} ${DPADD}
641.64Slukem	${_MKMSG_LINK} ${PROG}
651.1Scgd	${LD} ${LDFLAGS} -o ${PROG} ${OBJS} ${LDADD}
661.35Schristos
671.57Sthorpej.if ${SHLINKINSTALLDIR} != "/usr/libexec"
681.57SthorpejSYMLINKS+=	${SHLINKINSTALLDIR}/${PROG} /usr/libexec/${PROG}
691.7Smrg.endif
701.1Scgd
711.1Scgd.include <bsd.prog.mk>
721.45Sskrll.else
731.45Sskrll
741.45SskrllMAN=	ld.elf_so.1
751.45Sskrll
761.45Sskrll.include <bsd.man.mk>
771.45Sskrll.endif
78