On Mon, May 09, 2016 at 11:05:55AM -0700, John Baldwin wrote:
> On Saturday, May 07, 2016 06:50:05 AM David Wolfskill wrote:
> > [Recipient list trimmed a bit -- dhw]
> ... 
> > > 2 kernels get installed? Even if the old behaviour was to only install 1
> > > kernel, if you are listing 2 kernels in KERNCONF presumably that is 
> > > because
> > > you want to install 2 kernels?
> > 
> > Errr... no: I don't.  At least, not on the machine where I built them.
> Then don't pass them to 'installkernel'?  That is, I think this makes sense
> if you want to build N kernels but only install 1:
> make buildkernel KERNCONF="FOO BAR BAZ"
> # only install the FOO kernel
> make installkernel KERNCONF="FOO"
> And then if you want to install multiple:
> # install both FOO and BAR kernels
> make installkernel KERNCONF="FOO BAR"

I suppose there's probably some way to arrange things so the KERNCONF
specification in /etc/src.conf has one value during "buildkernel" and a
different value during "inistallkernel" -- but ... seriously...??!?

Wouldn't it be cleaner to have different variables (e.g., that could
each default to the KERNCONF specification, but could be overridden in
a simple text file that doesn't require delving into make(1) arcana to
craft or understand)?

Why make things harder for folks who are trying to use the system?

> The runaround seems to be whether this last case now should require multiple
> explicit installkernel invocations which I find inconsistent since the build
> stage doesn't.  I would fully expect 'installkernel' to install all of the
> kernels listed in KERNCONF and would assume that it is up to the invoker to
> choose KERNCONF appropriately.
> ....

Multiple installkernel invocations is certainly not something I would
advocate -- I do silly things sometimes, but I hope nothing I wrote was
interpreted thus. :-}

Suppose that src/Makefile.inc1 were modified so that:
* KERNCONF_BUILD is set to the value (explicit or otherwise) of KERNCONF
  unless it already has a value (in which case, the explicit value is
* KERNCONF_INSTALL is set to the value (explicit or otherwise) of KERNCONF
  unless it already has a value (in which case, the explicit value is

buildkernel then builds the kernel configs listed in KERNCONF_BUILD;
installkernel then installs the kernels listed in KERNCONF_INSTALL.

Folks who want to build & install the same set of kernels see no change.

Folks who want a difference between "buildkernel" and "installkernel" have
a simple way to specify it.

Only 1 invocation of installkernel is needed in any case.

Would that work?  It seems as if that would work for my case.

David H. Wolfskill                              da...@catwhisker.org
Those who would murder in the name of God or prophet are blasphemous cowards.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.

Attachment: signature.asc
Description: PGP signature

Reply via email to