Module Name: src Committed By: mrg Date: Fri Dec 23 10:19:58 UTC 2016
Modified Files: src/sbin/savecore: Makefile src/usr.bin/fstat: Makefile src/usr.bin/netstat: Makefile src/usr.bin/pmap: Makefile src/usr.bin/systat: Makefile src/usr.sbin/crash: Makefile src/usr.sbin/kgmon: Makefile src/usr.sbin/pstat: Makefile src/usr.sbin/trpt: Makefile Added Files: src/compat: exec.mk Log Message: for 64 bit mips platforms where we built userland largely as n32 by default, build a handful of tools as n64 so they work properly. unfortunately, they're also static as dynamic n64 has a problem. of these tools pstat is probably the lowest hanging fruit to convert to sysctl. systat would be close were it not for the netstat screen, which includes netstat itself. the rest are difficult to perhaps foolish. the upside is that netstat, pmap and fstat all work properly now. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/compat/exec.mk cvs rdiff -u -r1.25 -r1.26 src/sbin/savecore/Makefile cvs rdiff -u -r1.24 -r1.25 src/usr.bin/fstat/Makefile cvs rdiff -u -r1.43 -r1.44 src/usr.bin/netstat/Makefile cvs rdiff -u -r1.7 -r1.8 src/usr.bin/pmap/Makefile cvs rdiff -u -r1.39 -r1.40 src/usr.bin/systat/Makefile cvs rdiff -u -r1.32 -r1.33 src/usr.sbin/crash/Makefile cvs rdiff -u -r1.10 -r1.11 src/usr.sbin/kgmon/Makefile cvs rdiff -u -r1.16 -r1.17 src/usr.sbin/pstat/Makefile cvs rdiff -u -r1.10 -r1.11 src/usr.sbin/trpt/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sbin/savecore/Makefile diff -u src/sbin/savecore/Makefile:1.25 src/sbin/savecore/Makefile:1.26 --- src/sbin/savecore/Makefile:1.25 Wed Jun 13 23:16:27 2001 +++ src/sbin/savecore/Makefile Fri Dec 23 10:19:57 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.25 2001/06/13 23:16:27 wiz Exp $ +# $NetBSD: Makefile,v 1.26 2016/12/23 10:19:57 mrg Exp $ # @(#)Makefile 8.2 (Berkeley) 4/17/94 PROG= savecore @@ -9,4 +9,6 @@ MAN= savecore.8 LDADD= -lkvm -lutil -lz DPADD= ${LIBKVM} ${LIBUTIL} ${LIBZ} +.include "../../compat/exec.mk" + .include <bsd.prog.mk> Index: src/usr.bin/fstat/Makefile diff -u src/usr.bin/fstat/Makefile:1.24 src/usr.bin/fstat/Makefile:1.25 --- src/usr.bin/fstat/Makefile:1.24 Sat Jan 23 16:12:03 2016 +++ src/usr.bin/fstat/Makefile Fri Dec 23 10:19:57 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.24 2016/01/23 16:12:03 christos Exp $ +# $NetBSD: Makefile,v 1.25 2016/12/23 10:19:57 mrg Exp $ # from: @(#)Makefile 8.1 (Berkeley) 6/6/93 .include <bsd.own.mk> @@ -21,4 +21,6 @@ CPPFLAGS+=-D_KMEMUSER LDADD+=-lutil DPADD+=${LIBUTIL} +.include "../../compat/exec.mk" + .include <bsd.prog.mk> Index: src/usr.bin/netstat/Makefile diff -u src/usr.bin/netstat/Makefile:1.43 src/usr.bin/netstat/Makefile:1.44 --- src/usr.bin/netstat/Makefile:1.43 Sat Jun 6 13:48:37 2015 +++ src/usr.bin/netstat/Makefile Fri Dec 23 10:19:57 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.43 2015/06/06 13:48:37 joerg Exp $ +# $NetBSD: Makefile,v 1.44 2016/12/23 10:19:57 mrg Exp $ # from: @(#)Makefile 8.1 (Berkeley) 6/12/93 .include <bsd.own.mk> @@ -28,4 +28,6 @@ RUMPSRCS+= if_indextoname.c getifaddrs.c CPPFLAGS+= -DINET6 .endif +.include "../../compat/exec.mk" + .include <bsd.prog.mk> Index: src/usr.bin/pmap/Makefile diff -u src/usr.bin/pmap/Makefile:1.7 src/usr.bin/pmap/Makefile:1.8 --- src/usr.bin/pmap/Makefile:1.7 Sat Jan 23 21:22:49 2016 +++ src/usr.bin/pmap/Makefile Fri Dec 23 10:19:57 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.7 2016/01/23 21:22:49 christos Exp $ +# $NetBSD: Makefile,v 1.8 2016/12/23 10:19:57 mrg Exp $ USE_FORT?= yes # setgid PROG= pmap @@ -11,4 +11,6 @@ DPADD= ${LIBUTIL} ${LIBKVM} CWARNFLAGS.clang+= -Wno-format-extra-args CPPFLAGS+= -D_KMEMUSER +.include "../../compat/exec.mk" + .include <bsd.prog.mk> Index: src/usr.bin/systat/Makefile diff -u src/usr.bin/systat/Makefile:1.39 src/usr.bin/systat/Makefile:1.40 --- src/usr.bin/systat/Makefile:1.39 Tue Aug 2 15:56:09 2016 +++ src/usr.bin/systat/Makefile Fri Dec 23 10:19:57 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.39 2016/08/02 15:56:09 scole Exp $ +# $NetBSD: Makefile,v 1.40 2016/12/23 10:19:57 mrg Exp $ # @(#)Makefile 8.1 (Berkeley) 6/6/93 .include <bsd.own.mk> @@ -27,4 +27,6 @@ CPPFLAGS+=-DINET6 SRCS+= ip6.c .endif +.include "../../compat/exec.mk" + .include <bsd.prog.mk> Index: src/usr.sbin/crash/Makefile diff -u src/usr.sbin/crash/Makefile:1.32 src/usr.sbin/crash/Makefile:1.33 --- src/usr.sbin/crash/Makefile:1.32 Sat Dec 10 10:42:43 2016 +++ src/usr.sbin/crash/Makefile Fri Dec 23 10:19:57 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.32 2016/12/10 10:42:43 mrg Exp $ +# $NetBSD: Makefile,v 1.33 2016/12/23 10:19:57 mrg Exp $ PROG= crash MAN= crash.8 @@ -97,5 +97,7 @@ SRCS+= unsupported.c .endif # } +.include "../../compat/exec.mk" + .include <bsd.prog.mk> .include <bsd.klinks.mk> Index: src/usr.sbin/kgmon/Makefile diff -u src/usr.sbin/kgmon/Makefile:1.10 src/usr.sbin/kgmon/Makefile:1.11 --- src/usr.sbin/kgmon/Makefile:1.10 Wed Apr 22 15:23:04 2009 +++ src/usr.sbin/kgmon/Makefile Fri Dec 23 10:19:57 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.10 2009/04/22 15:23:04 lukem Exp $ +# $NetBSD: Makefile,v 1.11 2016/12/23 10:19:57 mrg Exp $ # from: @(#)Makefile 8.1 (Berkeley) 6/6/93 PROG= kgmon @@ -13,4 +13,6 @@ LDADD= -lkvm #BINOWN=root #BINMODE=4555 +.include "../../compat/exec.mk" + .include <bsd.prog.mk> Index: src/usr.sbin/pstat/Makefile diff -u src/usr.sbin/pstat/Makefile:1.16 src/usr.sbin/pstat/Makefile:1.17 --- src/usr.sbin/pstat/Makefile:1.16 Wed Jan 2 10:43:11 2013 +++ src/usr.sbin/pstat/Makefile Fri Dec 23 10:19:57 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.16 2013/01/02 10:43:11 dsl Exp $ +# $NetBSD: Makefile,v 1.17 2016/12/23 10:19:57 mrg Exp $ # from: @(#)Makefile 8.1 (Berkeley) 6/6/93 .include <bsd.own.mk> @@ -19,4 +19,6 @@ CPPFLAGS+=-D_KMEMUSER .PATH: ${NETBSDSRCDIR}/sbin/swapctl +.include "../../compat/exec.mk" + .include <bsd.prog.mk> Index: src/usr.sbin/trpt/Makefile diff -u src/usr.sbin/trpt/Makefile:1.10 src/usr.sbin/trpt/Makefile:1.11 --- src/usr.sbin/trpt/Makefile:1.10 Mon May 28 12:06:42 2007 +++ src/usr.sbin/trpt/Makefile Fri Dec 23 10:19:58 2016 @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/6/93 -# $NetBSD: Makefile,v 1.10 2007/05/28 12:06:42 tls Exp $ +# $NetBSD: Makefile,v 1.11 2016/12/23 10:19:58 mrg Exp $ .include <bsd.own.mk> @@ -15,4 +15,6 @@ LDADD= -lkvm CPPFLAGS+= -DINET6 .endif +.include "../../compat/exec.mk" + .include <bsd.prog.mk> Added files: Index: src/compat/exec.mk diff -u /dev/null src/compat/exec.mk:1.1 --- /dev/null Fri Dec 23 10:19:58 2016 +++ src/compat/exec.mk Fri Dec 23 10:19:57 2016 @@ -0,0 +1,42 @@ +# $NetBSD: exec.mk,v 1.1 2016/12/23 10:19:57 mrg Exp $ + +# this makefile fragment can be included to modify the default +# ABI a program is compiled with. this is designed to be used +# by tools that must match the kernel image like savecore(8) +# and kvm(3) using tools. + +# currently this file is used by these Makefiles: +# +# sbin/savecore/Makefile +# usr.bin/fstat/Makefile +# usr.bin/netstat/Makefile +# usr.bin/pmap/Makefile +# usr.bin/systat/Makefile +# usr.sbin/crash/Makefile +# usr.sbin/kgmon/Makefile +# usr.sbin/pstat/Makefile +# usr.sbin/trpt/Makefile +# +# of these, savecore, crash and kgmon are the only ones that +# can be considered "not a bug". all the *stat tools should +# be converted to use sysctl(3) on the running kernel, and +# anyone who needs kvm-access on crash dumps can build their +# own 64 bit version as necessary. + +# mips64 defaults to 32 bit userland, but with a 64 bit kernel +# most kvm-using tools are happier with 64 bit. + +.if ${MACHINE_ARCH} == "mips64el" || ${MACHINE_ARCH} == "mips64eb" + +# XXX -pie makes n64 crash +NOPIE=1 +# XXX interesting dynamic binaries crash (hello.c works.) +LDSTATIC=-static + +. include <bsd.own.mk> + +. if ${MKCOMPAT} != "no" && !defined(RESCUEDIR) +. include "${.PARSEDIR}/mips64/64/bsd.64.mk" +. endif # ${MKCOMPAT} != "no" + +.endif # mips64