Re: sys/conf/DEFAULT[S]

From: Adam C. Migus (adam_at_migus.org)
Date: 10/08/03

  • Next message: Bruce Evans: "Re: sys/conf/DEFAULT[S]"
    Date: Wed, 8 Oct 2003 12:33:13 -0400 (EDT)
    To: "Bruce Evans" <bde@zeta.org.au>
    
    

    Bruce Evans said:
    > On Wed, 8 Oct 2003, Adam C. Migus wrote:
    >
    >> Bruce Evans said:
    >> > Stefan's version requires SEMICOLON:
    >> > % + INCLUDE ID SEMICOLON
    >> > % + = { include($2, 0); };
    >> > % + |
    >> > ...
    >> > I lost your examples showing that this doesn't quite work. What
    >> is
    >> > the
    >> > problem with it?
    >> ...
    >> WRT Stefan's solution, simply nest two includes on the first line,
    >> like so:
    >>
    >> head -1 KERNEL
    >> include SUB1
    >>
    >> head -1 SUB1
    >> include SUB2
    >>
    >> This will cause config to fail in the same manner it did before,
    >> with his patch.
    >
    > Er, but this works for me. I test with SUB2 having the following:
    > 1) include GENERIC
    > 2) same contents as GENERIC
    > 3) same contents as GENERIC except for no comment lines at
    > beginning.
    >
    > Bruce
    >
    Here's my broken config (with Stefan's patch) compile, run, error,
    output and config exerpts:

    root@caster:ttyp4:config# make clean
    rm -f config config.o main.o lang.o mkmakefile.o mkheaders.o
    mkoptions.o config.8.gz config.8.cat.gz lang.c config.c y.tab.c
    y.tab.h
    root@caster:ttyp4:config# make CFLAGS="`make -V CFLAGS` -DYYDEBUG=1"
    Warning: Object directory not changed from original
    /src/freebsd/CURRENT/src/usr.sbin/config
    yacc -d config.y
    cp y.tab.c config.c
    cc -O -pipe -mcpu=pentiumpro -I.
    -I/src/freebsd/CURRENT/src/usr.sbin/config -Wsystem-headers
    -Werror -DYYDEBUG=1 -c config.c
    cc -O -pipe -mcpu=pentiumpro -I.
    -I/src/freebsd/CURRENT/src/usr.sbin/config -Wsystem-headers
    -Werror -DYYDEBUG=1 -c main.c
    lex -t lang.l > lang.c
    cc -O -pipe -mcpu=pentiumpro -I.
    -I/src/freebsd/CURRENT/src/usr.sbin/config -Wsystem-headers
    -Werror -DYYDEBUG=1 -c lang.c
    cc -O -pipe -mcpu=pentiumpro -I.
    -I/src/freebsd/CURRENT/src/usr.sbin/config -Wsystem-headers
    -Werror -DYYDEBUG=1 -c mkmakefile.c
    cc -O -pipe -mcpu=pentiumpro -I.
    -I/src/freebsd/CURRENT/src/usr.sbin/config -Wsystem-headers
    -Werror -DYYDEBUG=1 -c mkheaders.c
    cc -O -pipe -mcpu=pentiumpro -I.
    -I/src/freebsd/CURRENT/src/usr.sbin/config -Wsystem-headers
    -Werror -DYYDEBUG=1 -c mkoptions.c
    cc -O -pipe -mcpu=pentiumpro -I.
    -I/src/freebsd/CURRENT/src/usr.sbin/config -Wsystem-headers
    -Werror -DYYDEBUG=1 -o config config.o main.o lang.o mkmakefile.o
    mkheaders.o mkoptions.o -ll
    gzip -cn config.8 > config.8.gz
    root@caster:ttyp4:config# cp config /tmp
    root@caster:ttyp4:config# cd ../../sys/i386/conf
    root@caster:ttyp4:conf# export YYDEBUG=1
    root@caster:ttyp4:conf# /tmp/config DISKLESS_SMP_MAC
    yydebug: state 0, reducing by rule 3 (Many_specs :)
    yydebug: after reduction, shifting from state 0 to state 2
    yydebug: state 2, reading 274 (INCLUDE)
    yydebug: state 2, shifting to state 19
    yydebug: state 19, reading 275 (ID)
    yydebug: state 19, shifting to state 46
    yydebug: state 46, reading 273 (SEMICOLON)
    yydebug: state 46, shifting to state 56
    yydebug: state 56, reducing by rule 20 (Config_spec : INCLUDE ID
    SEMICOLON)
    yydebug: after reduction, shifting from state 2 to state 22
    yydebug: state 22, reading 274 (INCLUDE)
    config: SMP_MAC:1: syntax error
    root@caster:ttyp4:conf# head -3 DISKLESS_SMP_MAC SMP_MAC MAC
    ==> DISKLESS_SMP_MAC <==
    include SMP_MAC

    ident DISKLESS_SMP_MAC

    ==> SMP_MAC <==
    include MAC

    #ident SMP_MAC

    ==> MAC <==
    #
    # MAC -- Generic kernel configuration file for FreeBSD/i386 w/MAC
    #
    root@caster:ttyp4:conf#

    --
    Adam - (http://people.migus.org/~amigus/)
    Migus Dot Org - (http://www.migus.org/)
    _______________________________________________
    freebsd-arch@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-arch
    To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"
    

  • Next message: Bruce Evans: "Re: sys/conf/DEFAULT[S]"