Date: Tue, 28 Jan 1997 13:55:11 +1030 (CST) From: Michael Smith <msmith@atrad.adelaide.edu.au> To: jkh@time.cdrom.com (Jordan K. Hubbard) Cc: msmith@atrad.adelaide.edu.au, hosokawa@mt.cs.keio.ac.jp, keithl@wakko.gil.net, chat@freebsd.org, config@freebsd.org Subject: Kernel config metasyntax Message-ID: <199701280325.NAA06408@genesis.atrad.adelaide.edu.au> In-Reply-To: <18310.854101530@time.cdrom.com> from "Jordan K. Hubbard" at "Jan 24, 97 02:25:30 am"
next in thread | previous in thread | raw e-mail | index | archive | help
Jordan K. Hubbard stands accused of saying:
> > I really don't like that much. How about :
> >
> > # file : kern_options.kci
> >
> > option "DDB" {
> > description "Enables the kernel debugger"
> > manref "ddb(4)"
> > }
> > [ Other examples elided ]
>
> I like it! Who's gonna write the yacc specification! :-)
Uhh, why do we want a yacc parser for this?
What's wrong with :
proc option {name attrib} {
global Options;
lappend Options(list) $name;
foreach attrp $attrib {
set aname [lindex $attrp 0];
set aval [lrange $attrp 1 end];
set Options($name:$aname) $aval;
}
}
proc config_read {dir} {
set cfiles [glob -nocomplain $dir/*.kci];
foreach f $cfiles {
source $f;
}
}
(note error/range checking elided for clarity)
> Jordan
--
]] Mike Smith, Software Engineer msmith@gsoft.com.au [[
]] Genesis Software genesis@gsoft.com.au [[
]] High-speed data acquisition and (GSM mobile) 0411-222-496 [[
]] realtime instrument control. (ph) +61-8-8267-3493 [[
]] Unix hardware collector. "Where are your PEZ?" The Tick [[
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199701280325.NAA06408>
