Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/share/mk/bsd.prog.mk,v rcsdiff: /ftp/cvs/cvsroot/src/share/mk/bsd.prog.mk,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.185 retrieving revision 1.191 diff -u -p -r1.185 -r1.191 --- src/share/mk/bsd.prog.mk 2003/09/13 02:52:05 1.185 +++ src/share/mk/bsd.prog.mk 2003/10/19 03:00:55 1.191 @@ -1,4 +1,4 @@ -# $NetBSD: bsd.prog.mk,v 1.185 2003/09/13 02:52:05 erh Exp $ +# $NetBSD: bsd.prog.mk,v 1.191 2003/10/19 03:00:55 lukem Exp $ # @(#)bsd.prog.mk 8.2 (Berkeley) 4/2/94 .ifndef HOSTPROG @@ -17,18 +17,17 @@ realinstall: proginstall scriptsinstall clean: cleanprog ##### PROG specific flags. -COPTS+= ${COPTS.${PROG}} +COPTS+= ${COPTS.${PROG}} CPPFLAGS+= ${CPPFLAGS.${PROG}} CXXFLAGS+= ${CXXFLAGS.${PROG}} LDADD+= ${LDADD.${PROG}} +LDFLAGS+= ${LDFLAGS.${PROG}} +LDSTATIC+= ${LDSTATIC.${PROG}} ##### Default values CPPFLAGS+= ${DESTDIR:D-nostdinc ${CPPFLAG_ISYSTEM} ${DESTDIR}/usr/include} CXXFLAGS+= ${DESTDIR:D-nostdinc++ ${CPPFLAG_ISYSTEMXX} ${DESTDIR}/usr/include/g++} CFLAGS+= ${COPTS} -.if ${MACHINE_ARCH} == "sparc64" -CFLAGS+= -mcmodel=medlow -.endif # ELF platforms depend on crti.o, crtbegin.o, crtend.o, and crtn.o .if ${OBJECT_FMT} == "ELF" @@ -62,7 +61,7 @@ __bsd_prog_mk_system_libs?= \ CURSES DBM DES EDIT EVENT FORM GCC GNUMALLOC GSSAPI HDB INTL IPSEC \ KADM KADM5CLNT KADM5SRV KAFS KDB KRB KRB5 KSTREAM KVM L M MENU \ OBJC OSSAUDIO PCAP PCI PMC POSIX PTHREAD PTHREAD_DBG RESOLV RMT \ - ROKEN RPCSVC RT SKEY SS SSL SL TERMCAP USBHID UTIL WRAP Y Z + ROKEN RPCSVC RT SKEY SL SS SSL TERMCAP USBHID UTIL WRAP Y Z .for _n in ${__bsd_prog_mk_system_libs} .ifndef LIB${_n} @@ -73,6 +72,11 @@ LIB${_n}= ${DESTDIR}/usr/lib/lib${_n:tl} .endfor .undef __bsd_prog_mk_system_libs +.ifndef LIBSTDCXX +LIBSTDCXX= ${DESTDIR}/usr/lib/libstdc++.a +.MADE: ${LIBSTDCXX} +.endif + ##### Installed X11R6 library definitions # E.g. LIBX11?=${DESTDIR}/usr/X11R6/lib/libX11.a # etc.. @@ -136,11 +140,11 @@ _PROGLDOPTS+= -Wl,-dynamic-linker=${_SHL LIBCRT0= ${DESTDIR}/lib/crt0.o .endif .endif -.if ${SHLIBDIR} != ${LIBDIR} +.if ${SHLIBDIR} != "/usr/lib" _PROGLDOPTS+= -Wl,-rpath-link,${DESTDIR}${SHLIBDIR}:${DESTDIR}/usr/lib \ -R${SHLIBDIR} \ -L${DESTDIR}${SHLIBDIR} -.elif ${SHLIBINSTALLDIR} != ${LIBDIR} +.elif ${SHLIBINSTALLDIR} != "/usr/lib" _PROGLDOPTS+= -Wl,-rpath-link,${DESTDIR}${SHLIBINSTALLDIR}:${DESTDIR}/usr/lib \ -L${DESTDIR}${SHLIBINSTALLDIR} .endif @@ -157,13 +161,17 @@ _CCLINK= ${CC} .endif .gdbinit: + ${_MKCMD}\ rm -f .gdbinit .if defined(DESTDIR) && !empty(DESTDIR) + ${_MKCMD}\ echo "set solib-absolute-prefix ${DESTDIR}" > .gdbinit .else + ${_MKCMD}\ touch .gdbinit .endif .for __gdbinit in ${GDBINIT} + ${_MKCMD}\ echo "source ${__gdbinit}" >> .gdbinit .endfor @@ -171,14 +179,18 @@ ${OBJS} ${LOBJS}: ${DPSRCS} ${PROG}: .gdbinit ${LIBCRT0} ${OBJS} ${LIBC} ${LIBCRTBEGIN} ${LIBCRTEND} ${DPADD} .if !commands(${PROG}) + ${_MKMSGLINK.m} ${PROG} .if defined(DESTDIR) + ${_MKCMD}\ ${_CCLINK} ${LDFLAGS} ${LDSTATIC} -o ${.TARGET} -nostdlib ${_PROGLDOPTS} ${LIBCRT0} ${LIBCRTBEGIN} ${OBJS} ${LDADD} -L${_GCC_LIBGCCDIR} -L${DESTDIR}/usr/lib ${_SUPCXX} -lgcc -lc -lgcc ${LIBCRTEND} .else + ${_MKCMD}\ ${_CCLINK} ${LDFLAGS} ${LDSTATIC} -o ${.TARGET} ${_PROGLDOPTS} ${OBJS} ${LDADD} .endif # defined(DESTDIR) .endif # !commands(${PROG}) ${PROG}.ro: ${OBJS} ${DPADD} + ${_MKCMD}\ ${LD} -r -dc -o ${.TARGET} ${OBJS} .endif # defined(OBJS) && !empty(OBJS) @@ -191,15 +203,18 @@ MAN= ${PROG}.1 realall: ${PROG} ${SCRIPTS} cleanprog: cleanobjs cleanextra + ${_MKCMD}\ rm -f a.out [Ee]rrs mklog core *.core .gdbinit ${PROG} cleanobjs: .if defined(OBJS) && !empty(OBJS) + ${_MKCMD}\ rm -f ${OBJS} ${LOBJS} .endif cleanextra: .if defined(CLEANFILES) && !empty(CLEANFILES) + ${_MKCMD}\ rm -f ${CLEANFILES} .endif @@ -218,6 +233,8 @@ proginstall:: ${DESTDIR}${BINDIR}/${PROG .PRECIOUS: ${DESTDIR}${BINDIR}/${PROGNAME} __proginstall: .USE + ${_MKMSGINSTALL} + ${_MKCMD}\ ${INSTALL_FILE} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \ ${STRIPFLAG} ${SYSPKGTAG} ${.ALLSRC} ${.TARGET} @@ -248,6 +265,8 @@ scriptsinstall:: ${SCRIPTS:@S@${DESTDIR} .PRECIOUS: ${SCRIPTS:@S@${DESTDIR}${SCRIPTSDIR_${S}:U${SCRIPTSDIR}}/${SCRIPTSNAME_${S}:U${SCRIPTSNAME:U${S:T:R}}}@} __scriptinstall: .USE + ${_MKMSGINSTALL} + ${_MKCMD}\ ${INSTALL_FILE} \ -o ${SCRIPTSOWN_${.ALLSRC:T}:U${SCRIPTSOWN}} \ -g ${SCRIPTSGRP_${.ALLSRC:T}:U${SCRIPTSGRP}} \ @@ -275,6 +294,7 @@ scriptsinstall:: lint: ${LOBJS} .if defined(LOBJS) && !empty(LOBJS) + ${_MKCMD}\ ${LINT} ${LINTFLAGS} ${LDFLAGS:M-L*} ${LOBJS} ${LDADD} .endif