Makefile revision 1.80
11.80Schristos# $NetBSD: Makefile,v 1.80 2007/09/27 17:51:40 christos 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.67SskrllARCHSUBDIR= ${MACHINE_CPU} 71.67SskrllM= ${.CURDIR}/arch/${ARCHSUBDIR} 81.23Sjonathan 91.29Sthorpej.if ((${MACHINE_ARCH} == "alpha") || \ 101.75Ssimonb (${MACHINE_CPU} == "arm") || \ 111.49Sfredette (${MACHINE_ARCH} == "hppa") || \ 121.29Sthorpej (${MACHINE_ARCH} == "i386") || \ 131.29Sthorpej (${MACHINE_ARCH} == "m68k") || \ 141.75Ssimonb (${MACHINE_CPU} == "mips") || \ 151.29Sthorpej (${MACHINE_ARCH} == "powerpc") || \ 161.75Ssimonb (${MACHINE_CPU} == "sh3") || \ 171.29Sthorpej (${MACHINE_ARCH} == "sparc") || \ 181.32Smatt (${MACHINE_ARCH} == "sparc64") || \ 191.37Sfvdl (${MACHINE_ARCH} == "x86_64") || \ 201.32Smatt (${MACHINE_ARCH} == "vax")) && \ 211.29Sthorpej ${OBJECT_FMT} == "ELF" && ${MKPIC} != "no" 221.29Sthorpej 231.67SskrllPROG= ld.elf_so 241.29Sthorpej 251.72SlukemLDFLAGS+= -shared -symbolic -nostartfiles 261.74SskrllLDFLAGS+= -Wl,-static 271.66Suwe 281.8Slukem# Adds SRCS, CPPFLAGS, LDFLAGS, etc. Must go first so MD startup source 291.1Scgd# is first. 301.23Sjonathan.if exists($M/Makefile.inc) 311.23Sjonathan.include "$M/Makefile.inc" 321.3Scgd.endif 331.1Scgd 341.51SlukemCLIBOBJ!= cd ${NETBSDSRCDIR}/lib/libc && ${PRINTOBJDIR} 351.44Stv 361.67SskrllSRCS+= rtld.c reloc.c symbol.c malloc.c xmalloc.c xprintf.c debug.c \ 371.79Schristos map_object.c load.c search.c headers.c paths.c expand.c 381.40Sthorpej 391.80Schristos.if ${USE_SSP:Uno} == "yes" 401.80Schristos.PATH.c: ${NETBSDSRCDIR}/lib/libc/sys 411.80SchristosSRCS+= stack_protector.c 421.80Schristos.endif 431.80Schristos 441.67SskrllBINDIR= ${SHLINKINSTALLDIR} 451.41Slukem 461.67SskrllCPPFLAGS+= -DLIBDIR=\"${LIBDIR}\" -D_PATH_RTLD=\"${BINDIR}/${PROG}\" 471.67SskrllCPPFLAGS+= -I${.CURDIR} 481.67SskrllCPPFLAGS+= -DRTLD_LOADER 491.67SskrllCPPFLAGS+= -D_RTLD_SOURCE 501.76SmattCPPFLAGS+= -DCOMBRELOC 511.71Smartin#CPPFLAGS+= -DDEBUG 521.67Sskrll#CPPFLAGS+= -DRTLD_DEBUG 531.67Sskrll#CPPFLAGS+= -DRTLD_DEBUG_RELOC 541.67Sskrll#DBG= -g 551.67SskrllDBG= -O3 -fomit-frame-pointer 561.43Slukem 571.43Slukem.if ${SHLIBDIR} != ${LIBDIR} 581.67SskrllCPPFLAGS+= -DRTLD_DEFAULT_LIBRARY_PATH=\"${SHLIBDIR}:${LIBDIR}\" 591.43Slukem.endif 601.1Scgd 611.77SmattLDADD+= -L${CLIBOBJ} -L${DESTDIR}${LIBDIR} 621.77Smatt.if ${MKPICLIB} != "no" 631.77SmattLDADD+= -lc_pic 641.68Senami.if ${MKPICINSTALL} != "no" 651.67SskrllDPADD+= ${LIBC_PIC} 661.60Suwe.endif 671.67SskrllDPADD+= ${CLIBOBJ}/libc_pic.a 681.77Smatt.else 691.77SmattLDADD+= -lc 701.77SmattDPADD+= ${CLIBOBJ}/libc.a 711.77Smatt.endif 721.1Scgd 731.4SthorpejSTRIPFLAG= 741.1Scgd 751.23Sjonathan.PATH: $M 761.1Scgd 771.36Schristos${PROG}: ${OBJS} ${DPADD} 781.64Slukem ${_MKMSG_LINK} ${PROG} 791.72Slukem ${CC} ${LDFLAGS} -o ${PROG} ${OBJS} ${LDADD} 801.35Schristos 811.57Sthorpej.if ${SHLINKINSTALLDIR} != "/usr/libexec" 821.57SthorpejSYMLINKS+= ${SHLINKINSTALLDIR}/${PROG} /usr/libexec/${PROG} 831.7Smrg.endif 841.1Scgd 851.1Scgd.include <bsd.prog.mk> 861.45Sskrll.else 871.45Sskrll 881.68SenamiMAN= ld.elf_so.1 891.45Sskrll 901.45Sskrll.include <bsd.man.mk> 911.45Sskrll.endif 92