Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 May 2001 17:33:54 +0300
From:      Ruslan Ermilov <ru@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org, current@FreeBSD.org
Cc:        sobomax@FreeBSD.org
Subject:   Re: cvs commit: src Makefile.inc1
Message-ID:  <20010515173354.B60756@sunbay.com>
In-Reply-To: <20010515161957.A54414@sunbay.com>; from ru@FreeBSD.org on Tue, May 15, 2001 at 04:19:57PM %2B0300
References:  <200105141721.f4EHL2056720@freefall.freebsd.org> <20010515161957.A54414@sunbay.com>

next in thread | previous in thread | raw e-mail | index | archive | help
OK, more details on 4.3-STABLE -> 5.0-CURRENT upgrade path breakage.

1.  kbdcontrol(1) is used by usr.sbin/sysinstall/Makefile to generate
    keymap.h with keyboard maps.

2.  Recent usr.sbin/sysinstall/Makefile wants to generate keymap.h
    from "current" keymap sources in ../../share/syscons/keymaps,
    so it should use "current" kbdcontrol(1) as well because:
    a) only -CURRENT kbdcontrol(1) understands ${KEYMAP_PATH}
    b) only "current" kbdcontrol(1) may understand "current" keymap
       file syntax, as is the keyboard "paste" feature for now.

3.  So usr.sbin/kbdcontrol should be in Makefile.inc1:bootstrap-tools.

4.  But bootstrap-tools are supposed to be built in a host environment,
    and -CURRENT kbdcontrol(1) couldn't be built on -STABLE because it
    requires -CURRENT sys/sys/kbio.h header (the PASTE define).

I'm currently testing with -I${.CURDIR}/../../sys added to the
kbdcontrol/Makefile, but this is a gross hack.

On Tue, May 15, 2001 at 04:19:57PM +0300, Ruslan Ermilov wrote:
> On Mon, May 14, 2001 at 10:21:02AM -0700, Ruslan Ermilov wrote:
> > ru          2001/05/14 10:21:02 PDT
> > 
> >   Modified files:
> >     .                    Makefile.inc1 
> >   Log:
> >   Add kbdcontrol(1) to bootstrap-tools.
> >   This fixes the upgrade path breakage in usr.sbin/sysinstall.
> >   
> >   Revision  Changes    Path
> >   1.201     +2 -1      src/Makefile.inc1
> > 
> Argh, this doesn't work either.  I first tried this with some stuff
> commented out in Makefile.inc1, and it succeeded.  But at the time
> kbdcontrol is built in bootstrap-tools, ${WORLDTMP}/usr/include is
> not yet populated, and kbdcontrol.c requires an up-to-date header
> files.  OTOH, the bootstrap-tools are supposed to be built under
> the host environment, so compiling against CURRENT sources would
> be a bug.  Ideas?
> 
> --------------------------------------------------------------
> >>> stage 1: bootstrap tools
> --------------------------------------------------------------
> [...]
> cd /CURRENT/usr/src/usr.sbin/kbdcontrol;  make obj;  make depend;  make all;  make install
> /usr/obj/CURRENT/usr/src/i386/CURRENT/usr/src/usr.sbin/kbdcontrol created for /CURRENT/usr/src/usr.sbin/kbdcontrol
> lex -t  /CURRENT/usr/src/usr.sbin/kbdcontrol/lex.l > lex.c
> rm -f .depend
> mkdep -f .depend -a    -I/CURRENT/usr/src/usr.sbin/kbdcontrol -I/usr/obj/CURRENT/usr/src/i386/usr/include  /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c lex.c
> cd /CURRENT/usr/src/usr.sbin/kbdcontrol; make _EXTRADEPEND
> echo kbdcontrol: /usr/obj/CURRENT/usr/src/i386/usr/lib/libc.a /usr/obj/CURRENT/usr/src/i386/usr/lib/libl.a >> .depend
> cc -O -pipe  -I/CURRENT/usr/src/usr.sbin/kbdcontrol   -I/usr/obj/CURRENT/usr/src/i386/usr/include -c /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c
> /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c: In function `get_entry':
> /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c:206: `PASTE' undeclared (first use in this function)
> /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c:206: (Each undeclared identifier is reported only once
> /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c:206: for each function it appears in.)
> /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c: In function `print_entry':
> /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c:444: `PASTE' undeclared (first use in this function)
> /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c: In function `dump_entry':
> /CURRENT/usr/src/usr.sbin/kbdcontrol/kbdcontrol.c:646: `PASTE' undeclared (first use in this function)
> *** Error code 1
> 
> Stop in /CURRENT/usr/src/usr.sbin/kbdcontrol.
> *** Error code 1
> 
> Stop in /CURRENT/usr/src.
> *** Error code 1
> 
> Stop in /CURRENT/usr/src.
> *** Error code 1
> 
> Stop in /CURRENT/usr/src.
> 
> 
> Cheers,
> -- 
> Ruslan Ermilov		Oracle Developer/DBA,
> ru@sunbay.com		Sunbay Software AG,
> ru@FreeBSD.org		FreeBSD committer,
> +380.652.512.251	Simferopol, Ukraine
> 
> http://www.FreeBSD.org	The Power To Serve
> http://www.oracle.com	Enabling The Information Age

-- 
Ruslan Ermilov		Oracle Developer/DBA,
ru@sunbay.com		Sunbay Software AG,
ru@FreeBSD.org		FreeBSD committer,
+380.652.512.251	Simferopol, Ukraine

http://www.FreeBSD.org	The Power To Serve
http://www.oracle.com	Enabling The Information Age

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010515173354.B60756>