Subject: kern/14025: fixes to current usr.sbin/config build instructions
To: None <gnats-bugs@gnats.netbsd.org>
From: None <cagney@mac.com>
List: netbsd-bugs
Date: 09/20/2001 11:31:04
>Number:         14025
>Category:       kern
>Synopsis:       fixes to current usr.sbin/config build instructions
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    kern-bug-people
>State:          open
>Class:          doc-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Sep 20 11:32:01 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Andrew Cagney
>Release:        1.5.2 userland, more recent kernel
>Organization:
>Environment:
NetBSD localhost 1.5X NetBSD 1.5X (NETLUX) #0: Fri Aug 24 19:03:24 EDT 2001     boor@localhost:/usr/src/sys/arch/macppc/compile/NETLUX macppc

>Description:
Ref:
http://www.netbsd.org/Documentation/kernel/#how_to_build_a_kernel

Ref:
kern/14024

The notes recommend building usr.sbin/config using the command:

cd /usr/src/usr.sbin/config ; make && make install

Per kern/14024, this assumes that config is always buildable.

The ``cd ..'' may fail.

``make install'' is probably not a good idea.  It trashes the existing config program.

>How-To-Repeat:
Follow the usr.sbin/config build instructions.

>Fix:
Change 1:
Replace the ``;'' with a ``&'' vis: ``cd /usr/src/usr.sbin/config && make ...'' so that the entire command fails if the CD fails.

Change 2:
Compile with -DMAKE_BOOTSTRAP vis: ``... && make CFLAGS=-DMAKE_BOOTSTRAP && ....'' so that config is restricted to useing only portable features.

Change 3:
I've figured out only half of this.  A build/install config.new using: ``... && make CFLAGS=-DMAKE_BOOTSTRAP PROG=config.new all install'' kind fo works - it correctly installs the program config.new it still manages to trash the man page (config.cat8 :-( ).  My next best guess is ``... && make CFLAGS=-DMAKE_BOOTSTRAP PROG=config.new MAN= all install'' which stops the install of the man page.



>Release-Note:
>Audit-Trail:
>Unformatted: