Home | History | Annotate | Line # | Download | only in ld.aout_so
Makefile revision 1.42
      1 #	$NetBSD: Makefile,v 1.42 2003/10/19 01:19:10 lukem Exp $
      2 
      3 .include <bsd.own.mk>			# for OBJECT_FMT definition
      4 .include <bsd.shlib.mk>			# for SHLINKINSTALLDIR definition
      5 .if (${OBJECT_FMT} == "a.out")
      6 PROG=	ld.so
      7 SRCS=	mdprologue.S rtld.c malloc.c shlib.c md.c vfprintf.c
      8 BINDIR=	${SHLINKINSTALLDIR}
      9 
     10 CLIB=	${NETBSDSRCDIR}/lib/libc
     11 CLIBOBJ!=cd ${CLIB} && ${PRINTOBJDIR}
     12 PICFLAG=-fpic -fno-function-cse
     13 CPPFLAGS+=$(PICFLAG) -DRTLD -DLIBC_SCCS \
     14 	  -I${CLIB}/include -I$(.CURDIR)/arch/$(MACHINE_ARCH) -I$(.CURDIR)
     15 .if defined(DEBUG)
     16 CPPFLAGS+=-DDEBUG
     17 .endif
     18 .if ${SHLIBINSTALLDIR} != ${LIBDIR}
     19 CPPFLAGS+=-DSTANDARD_SEARCH_DIRS=\"${SHLIBINSTALLDIR}\",\"${LIBDIR}\"
     20 .endif
     21 ASFLAGS+=-k
     22 LDFLAGS+=-Bshareable -Bsymbolic -assert nosymbolic -L${CLIBOBJ}
     23 .if defined(DESTDIR)
     24 LDFLAGS+= -nostdlib -L${DESTDIR}/usr/lib
     25 .endif
     26 LDADD+=	-lc_pic
     27 DPADD+=	${LIBC_PIC}
     28 
     29 .PATH: ${CLIB}/stdio $(.CURDIR)/arch/$(MACHINE_ARCH)
     30 
     31 $(PROG):
     32 	$(LD) -o $(PROG) $(LDFLAGS) $(OBJS) $(LDADD)
     33 
     34 .S.o:
     35 	${CPP} ${.IMPSRC} | ${AS} ${ASFLAGS} -o ${.TARGET} -
     36 
     37 .if ${SHLINKINSTALLDIR} != "/usr/libexec"
     38 SYMLINKS+=	${SHLINKINSTALLDIR}/${PROG} /usr/libexec/${PROG}
     39 .endif
     40 
     41 .elif (${OBJECT_FMT} == "ELF" && \
     42        (${MACHINE_ARCH} == "arm" || \
     43         ${MACHINE_ARCH} == "i386" || \
     44         ${MACHINE_ARCH} == "m68k" || \
     45         ${MACHINE_ARCH} == "sparc" || \
     46         ${MACHINE_ARCH} == "vax"))
     47 
     48 FILES=		ld.so
     49 FILESDIR=	/usr/libexec
     50 FILESMODE=	${BINMODE}
     51 CLEANFILES+=	ld.so
     52 
     53 all dependall: ${FILES}
     54 
     55 ld.so:	${.CURDIR}/ld.so.${MACHINE_ARCH}.uue
     56 	${_MKMSG} " create  ${.TARGET}"
     57 	${_MKCMD}\
     58 	${TOOL_UUDECODE} ${.ALLSRC}
     59 
     60 .endif
     61 
     62 MAN= ld.aout_so.1
     63 
     64 .include <bsd.prog.mk>
     65