Makefile revision 1.83
11.83Sskrll# $NetBSD: Makefile,v 1.83 2007/10/30 17:19:59 skrll 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.81SadSRCS+= rtld.c reloc.c symbol.c xmalloc.c xprintf.c debug.c \ 371.83Sskrll map_object.c load.c search.c headers.c paths.c expand.c 381.40Sthorpej 391.80Schristos.PATH.c: ${NETBSDSRCDIR}/lib/libc/sys 401.80SchristosSRCS+= stack_protector.c 411.83Sskrll 421.83Sskrll.PATH.c: ${NETBSDSRCDIR}/lib/libc/stdlib 431.83SskrllSRCS+= exit.c 441.80Schristos 451.67SskrllBINDIR= ${SHLINKINSTALLDIR} 461.41Slukem 471.67SskrllCPPFLAGS+= -DLIBDIR=\"${LIBDIR}\" -D_PATH_RTLD=\"${BINDIR}/${PROG}\" 481.67SskrllCPPFLAGS+= -I${.CURDIR} 491.67SskrllCPPFLAGS+= -DRTLD_LOADER 501.67SskrllCPPFLAGS+= -D_RTLD_SOURCE 511.76SmattCPPFLAGS+= -DCOMBRELOC 521.71Smartin#CPPFLAGS+= -DDEBUG 531.67Sskrll#CPPFLAGS+= -DRTLD_DEBUG 541.67Sskrll#CPPFLAGS+= -DRTLD_DEBUG_RELOC 551.67Sskrll#DBG= -g 561.67SskrllDBG= -O3 -fomit-frame-pointer 571.43Slukem 581.43Slukem.if ${SHLIBDIR} != ${LIBDIR} 591.67SskrllCPPFLAGS+= -DRTLD_DEFAULT_LIBRARY_PATH=\"${SHLIBDIR}:${LIBDIR}\" 601.43Slukem.endif 611.1Scgd 621.77SmattLDADD+= -L${CLIBOBJ} -L${DESTDIR}${LIBDIR} 631.77Smatt.if ${MKPICLIB} != "no" 641.77SmattLDADD+= -lc_pic 651.68Senami.if ${MKPICINSTALL} != "no" 661.67SskrllDPADD+= ${LIBC_PIC} 671.60Suwe.endif 681.67SskrllDPADD+= ${CLIBOBJ}/libc_pic.a 691.77Smatt.else 701.77SmattLDADD+= -lc 711.77SmattDPADD+= ${CLIBOBJ}/libc.a 721.77Smatt.endif 731.1Scgd 741.4SthorpejSTRIPFLAG= 751.1Scgd 761.23Sjonathan.PATH: $M 771.1Scgd 781.36Schristos${PROG}: ${OBJS} ${DPADD} 791.64Slukem ${_MKMSG_LINK} ${PROG} 801.72Slukem ${CC} ${LDFLAGS} -o ${PROG} ${OBJS} ${LDADD} 811.35Schristos 821.57Sthorpej.if ${SHLINKINSTALLDIR} != "/usr/libexec" 831.57SthorpejSYMLINKS+= ${SHLINKINSTALLDIR}/${PROG} /usr/libexec/${PROG} 841.7Smrg.endif 851.1Scgd 861.1Scgd.include <bsd.prog.mk> 871.45Sskrll.else 881.45Sskrll 891.68SenamiMAN= ld.elf_so.1 901.45Sskrll 911.45Sskrll.include <bsd.man.mk> 921.45Sskrll.endif 93