Subject: Re: CVS commit: syssrc
To: None <hubertf@netbsd.org>
From: Chris G. Demetriou <cgd@sibyte.com>
List: current-users
Date: 05/08/2000 18:18:31
the 'kernel install' change is losing for a couple of reasons:

(1) it'd be Really Nice if sites could easily override the defaults
for all of their machines.  e.g. at my site, i'd always set
/etc/mk.conf to say 'false' for the install target, since i really
don't want the kernels to ever be installed even if i accidentally say
'make install'.  To do that currently, you need N lines in
/etc/mk.conf where N is possibly quite large.  add a new machine type
and forget to add the mk.conf line, you lose.

(2) this code does:

	+ MACHINE_NAME!=  uname -n
	+ install: install-kernel-${MACHINE_NAME}

	(a) use of uname will break the functionality for
	    cross-compiles.

	(b) why not just use MACHINE, if you really want to do this?

	(c) it's probably better to have something like:

		KERNEL_INSTALL_TARGET?= default-install-kernel-${MACHINE}
		install: ${KERNEL_INSTALL_TARGET}

		and then:

		default-install-kernel-${MACHINE}: ...

	    or similar, so that people can override the target
	    entirely, so you can do (2) in some sane fashion.  they
	    could also provide MACHINE_ARCH-dependent defaults if
	    they wanted to, or really do whatever they watned.

	

hubertf@netbsd.org (Hubert Feyrer) writes:
> odule Name:	syssrc
> Committed By:	hubertf
> Date:		Tue May  9 00:56:28 UTC 2000
> 
> Modified Files:
> 	syssrc/sys/arch/alpha/conf: Makefile.alpha
> 	syssrc/sys/arch/amiga/conf: Makefile.amiga
> 	syssrc/sys/arch/arc/conf: Makefile.arc
> 	syssrc/sys/arch/arm32/conf: Makefile.arm32
> 	syssrc/sys/arch/atari/conf: Makefile.atari
> 	syssrc/sys/arch/bebox/conf: Makefile.bebox
> 	syssrc/sys/arch/cobalt/conf: Makefile.cobalt
> 	syssrc/sys/arch/evbsh3/conf: Makefile.evbsh3 Makefile.evbsh3.el
> 	syssrc/sys/arch/hp300/conf: Makefile.hp300
> 	syssrc/sys/arch/hpcmips/conf: Makefile.hpcmips
> 	syssrc/sys/arch/i386/conf: Makefile.i386
> 	syssrc/sys/arch/luna68k/conf: Makefile.luna68k
> 	syssrc/sys/arch/mac68k/conf: Makefile.mac68k
> 	syssrc/sys/arch/macppc/conf: Makefile.macppc
> 	syssrc/sys/arch/mmeye/conf: Makefile.mmeye
> 	syssrc/sys/arch/mvme68k/conf: Makefile.mvme68k
> 	syssrc/sys/arch/news68k/conf: Makefile.news68k
> 	syssrc/sys/arch/newsmips/conf: Makefile.newsmips
> 	syssrc/sys/arch/next68k/conf: Makefile.next68k
> 	syssrc/sys/arch/ofppc/conf: Makefile.ofppc
> 	syssrc/sys/arch/pc532/conf: Makefile.pc532
> 	syssrc/sys/arch/pmax/conf: Makefile.pmax
> 	syssrc/sys/arch/prep/conf: Makefile.prep
> 	syssrc/sys/arch/sh3/conf: Makefile.sh3 Makefile.sh3.be Makefile.sh3.le
> 	syssrc/sys/arch/sparc/conf: Makefile.sparc
> 	syssrc/sys/arch/sparc64/conf: Makefile.sparc64
> 	syssrc/sys/arch/sun3/conf: Makefile.sun3
> 	syssrc/sys/arch/vax/conf: Makefile.vax
> 	syssrc/sys/arch/x68k/conf: Makefile.x68k
> 
> Log Message:
> Add "install" target, so "make install" after building the kernel
> does something useful.  The target can be redefined by putting a
> install-kernel-${MACHINE_NAME} target that fits your needs into
> /etc/mk.conf.
> 
> 
> To generate a diff of this commit:
> cvs rdiff -r1.57 -r1.58 syssrc/sys/arch/alpha/conf/Makefile.alpha
> cvs rdiff -r1.88 -r1.89 syssrc/sys/arch/amiga/conf/Makefile.amiga
> cvs rdiff -r1.36 -r1.37 syssrc/sys/arch/arc/conf/Makefile.arc
> cvs rdiff -r1.52 -r1.53 syssrc/sys/arch/arm32/conf/Makefile.arm32
> cvs rdiff -r1.59 -r1.60 syssrc/sys/arch/atari/conf/Makefile.atari
> cvs rdiff -r1.18 -r1.19 syssrc/sys/arch/bebox/conf/Makefile.bebox
> cvs rdiff -r1.3 -r1.4 syssrc/sys/arch/cobalt/conf/Makefile.cobalt
> cvs rdiff -r1.6 -r1.7 syssrc/sys/arch/evbsh3/conf/Makefile.evbsh3
> cvs rdiff -r1.5 -r1.6 syssrc/sys/arch/evbsh3/conf/Makefile.evbsh3.el
> cvs rdiff -r1.75 -r1.76 syssrc/sys/arch/hp300/conf/Makefile.hp300
> cvs rdiff -r1.16 -r1.17 syssrc/sys/arch/hpcmips/conf/Makefile.hpcmips
> cvs rdiff -r1.105 -r1.106 syssrc/sys/arch/i386/conf/Makefile.i386
> cvs rdiff -r1.6 -r1.7 syssrc/sys/arch/luna68k/conf/Makefile.luna68k
> cvs rdiff -r1.75 -r1.76 syssrc/sys/arch/mac68k/conf/Makefile.mac68k
> cvs rdiff -r1.13 -r1.14 syssrc/sys/arch/macppc/conf/Makefile.macppc
> cvs rdiff -r1.7 -r1.8 syssrc/sys/arch/mmeye/conf/Makefile.mmeye
> cvs rdiff -r1.47 -r1.48 syssrc/sys/arch/mvme68k/conf/Makefile.mvme68k
> cvs rdiff -r1.6 -r1.7 syssrc/sys/arch/news68k/conf/Makefile.news68k
> cvs rdiff -r1.26 -r1.27 syssrc/sys/arch/newsmips/conf/Makefile.newsmips
> cvs rdiff -r1.15 -r1.16 syssrc/sys/arch/next68k/conf/Makefile.next68k
> cvs rdiff -r1.24 -r1.25 syssrc/sys/arch/ofppc/conf/Makefile.ofppc
> cvs rdiff -r1.61 -r1.62 syssrc/sys/arch/pc532/conf/Makefile.pc532
> cvs rdiff -r1.79 -r1.80 syssrc/sys/arch/pmax/conf/Makefile.pmax
> cvs rdiff -r1.2 -r1.3 syssrc/sys/arch/prep/conf/Makefile.prep
> cvs rdiff -r1.5 -r1.6 syssrc/sys/arch/sh3/conf/Makefile.sh3
> cvs rdiff -r1.4 -r1.5 syssrc/sys/arch/sh3/conf/Makefile.sh3.be \
>     syssrc/sys/arch/sh3/conf/Makefile.sh3.le
> cvs rdiff -r1.68 -r1.69 syssrc/sys/arch/sparc/conf/Makefile.sparc
> cvs rdiff -r1.22 -r1.23 syssrc/sys/arch/sparc64/conf/Makefile.sparc64
> cvs rdiff -r1.81 -r1.82 syssrc/sys/arch/sun3/conf/Makefile.sun3
> cvs rdiff -r1.54 -r1.55 syssrc/sys/arch/vax/conf/Makefile.vax
> cvs rdiff -r1.44 -r1.45 syssrc/sys/arch/x68k/conf/Makefile.x68k
> 
> Please note that diffs are not public domain; they are subject to the
> copyright notices on the relevant files.