summaryrefslogtreecommitdiffstats
path: root/usr.sbin/config/lang.l
Commit message (Collapse)AuthorAgeFilesLines
* MFC r263429asomers2014-04-101-0/+13
| | | | | | | | | | | | | | | | | | | Fix kern/187712: config(8) does not respect KERNCONFDIR. The impact of this bug is that you cannot build a kernel if both of the following are true: 1) The kernel config file is in a non-default location 2) The kernel config file uses the "include" statement from config(5). usr.sbin/config/main.c usr.sbin/config/config.8 usr.sbin/config/config.h usr.sbin/config/lang.l Added a "-I path" option to config(8). By analogy to cc(1), it adds an extra path in which the "include" statement will search for files. Makefile.inc1 Pass "-I ${KERNCONFDIR}" to config(8).
* Work around build breakages with GCC 4.2.jkim2013-05-231-0/+1
| | | | Reported by: tinderbox
* Improve compatibility with recent flex from flex.sourceforge.net.jkim2013-05-031-3/+4
|
* Don't generate input() since it's not used.brucec2010-11-221-0/+1
|
* - Handle calloc() allocation failures.ru2010-03-301-0/+3
| | | | | | | | | - Fixed a comment. - 2 -> EXIT_FAILURE in some places. - errx() -> err() where appropriate. PR: 144644 Submitted by: Garrett Cooper
* ANSIfy almost all applications that use WARNS=6.ed2009-12-291-1/+1
| | | | | | | I was considering committing all these patches one by one, but as discussed with brooks@, there is no need to do this. If we ever need/want to merge these changes back, it is still possible to do this per application.
* Allow multiple makeoption lines to be used with the += operator, this permitsthompsa2008-11-221-0/+1
| | | | | | | | | | the following syntax in the kernel config. makeoptions MODULES_OVERRIDE=foo makeoptions MODULES_OVERRIDE+=bar makeoptions MODULES_OVERRIDE+=baz Bump config minor version to 600007.
* Allow kernel config files to include files other than those in the CWD,obrien2008-07-281-0/+6
| | | | using unquoted paths.
* Improve INCLUDE_CONFIG_FILE support.wkoszek2007-05-121-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change will let us to have full configuration of a running kernel available in sysctl: sysctl -b kern.conftxt The same configuration is also contained within the kernel image. It can be obtained with: config -x <kernelfile> Current functionality lets you to quickly recover kernel configuration, by simply redirecting output from commands presented above and starting kernel build procedure. "include" statements are also honored, which means options and devices from included files are also included. Please note that comments from configuration files are not preserved by default. In order to preserve them, you can use -C flag for config(8). This will bring configuration file and included files literally; however, redirection to a file no longer works directly. This commit was followed by discussion, that took place on freebsd-current@. For more details, look here: http://lists.freebsd.org/pipermail/freebsd-current/2007-March/069994.html http://lists.freebsd.org/pipermail/freebsd-current/2007-May/071844.html Development of this patch took place in Perforce, hierarchy: //depot/user/wkoszek/wkoszek_kconftxt/ Support from: freebsd-current@ (links above) Reviewed by: imp@ Approved by: imp@
* Add "makeoption" as an alias to "makeoptions", for symmetry.ru2005-12-031-0/+1
|
* By a popular demand, add "nomakeoptions" as an alias to "nomakeoption".ru2005-11-031-0/+1
|
* Implement the "nocpu" directive.ru2005-11-031-0/+1
| | | | Requested by: rwatson
* "device" and "nodevice" lines can actually specify more than one devicedes2005-02-101-0/+2
| | | | | | (separated by commas), so add "devices" and "nodevices" as aliases. MFC after: 2 weeks
* If the file specified in an "include" line does not exist in the currentdes2004-10-241-1/+9
| | | | | | | | directory, and its name does not begin with a period or a forward slash, go look for it in ../../conf. Wished for by: scottl MFC after: 2 weeks
* We accept both "option" and "options" so also accept both "nooption"phk2004-10-121-0/+1
| | | | and "nooptions".
* Kill count device support from config. I've changed the last fewpeter2004-08-301-17/+2
| | | | | | | | | | | | | | | | | remaining consumers to have the count passed as an option. This is i4b, pc98/wdc, and coda. Bump configvers.h from 500013 to 600000. Remove heuristics that tried to parse "device ed5" as 5 units of the ed device. This broke things like the snd_emu10k1 device, which required quotes to make it parse right. The no-longer-needed quotes have been removed from NOTES, GENERIC etc. eg, I've removed the quotes from: device snd_maestro device "snd_maestro3" device snd_mss I believe everything will still compile and work after this.
* Per letter dated July 22, 1999, delete clause 3 from code directlyimp2004-08-071-4/+0
| | | | from Berkeley.
* Add a new "files" directive, which allows to include a files.foo file directlycognet2004-05-091-0/+1
| | | | | from a kernel config file. Bump config version to reflect this change.
* Implemented "nooption" and "nomakeoption" config(8) tokens.ru2003-02-261-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | Fixed memory leak in the "nodevice" option implementation. Use these instead of sed(1) in MD NOTES. Use a single makefile (sys/conf/makeLINT.mk) to generate LINT for all architectures. (Previous versions missed the LINT dependency on Makefile, and i386 version also missed the dependency on ${NOTES}.) Fixed bugs in the previous NOTES conversion using the "nodevice" token and sed(1): - i386 LINT lost "device pst". - pc98 LINT lost SC_*, MAXCONS and KBD_DISABLE_KEYMAP_LOAD options, and got needless DPT_* options. - Added nooptions PPC_DEBUG, PPC_PROBE_CHIPSET, KBD_INSTALL_CDEV to sparc64 LINT so that it has a chance to config(8). This basically returns us to where we were before.
* Implemented a simple "nodevice" config(8) command that cancelsru2003-02-151-1/+2
| | | | | | | the effect of the "device" command, and use it to generate the OLDCARD from GENERIC. Suggested by: bde
* Clean up hex() and octal() to return and work with unsigned integers sincejmallett2002-06-211-8/+8
| | | | | they scan values of unsigned types, and since they do not need otherwise, have them take const char * arguments.
* Enable hardwiring of things like tunables from embedded enironmentspeter2001-08-271-0/+1
| | | | that do not start from loader(8).
* Introduce an "include" directive. It takes one argument, a filenamedd2001-07-121-0/+85
| | | | | | | | | | | | | | to be included into this one. This works the same way as #include does in C; as far as the user is concerned, the included file is inlined into the current one. Since config(8) is no longer limited to working on one user-supplied file, printing just a line number in an error message is not sufficient. The new global variable yyfile represents the file currently being parsed, and must be printed as well. Reviewed by: imp Obtained from: OpenBSD
* ${BDECFLAGS} work. And fix a real error in the process. A "MAXUSERS"peter2001-02-191-1/+1
| | | | | string could have been passed to free(); There are some warnings here I am not sure how to fix as they are in the lex scanner code, etc.
* Make it possible to specify profiling in the kernel config file.phk2000-10-141-0/+1
| | | | Do so for LINT.
* Borrow phk's axe and apply the next stage of config(8)'s evolution.peter2000-06-131-35/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use Warner Losh's "hint" driver to decode ascii strings to fill the resource table at boot time. config(8) no longer generates an ioconf.c table - ie: the configuration no longer has to be compiled into the kernel. You can reconfigure your isa devices with the likes of this at loader(8) time: set hint.ed.0.port=0x320 userconfig will be rewritten to use this style interface one day and will move to /boot/userconfig.4th or something like that. It is still possible to statically compile in a set of hints into a kernel if you do not wish to use loader(8). See the "hints" directive in GENERIC as an example. All device wiring has been moved out of config(8). There is a set of helper scripts (see i386/conf/gethints.pl, and the same for alpha and pc98) that extract the 'at isa? port foo irq bar' from the old files and produces a hints file. If you install this file as /boot/device.hints (and update /boot/defaults/loader.conf - You can do a build/install in sys/boot) then loader will load it automatically for you. You can also compile in the hints directly with: hints "device.hints" as well. There are a few things that I'm not too happy with yet. Under this scheme, things like LINT would no longer be useful as "documentation" of settings. I have renamed this file to 'NOTES' and stored the example hints strings in it. However... this is not something that config(8) understands, so there is a script that extracts the build-specific data from the documentation file (NOTES) to produce a LINT that can be config'ed and built. A stack of man4 pages will need updating. :-/ Also, since there is no longer a difference between 'device' and 'pseudo-device' I collapsed the two together, and the resulting 'device' takes a 'number of units' for devices that still have it statically allocated. eg: 'device fe 4' will compile the fe driver with NFE set to 4. You can then set hints for 4 units (0 - 3). Also note that 'device fe0' will be interpreted as "zero units of 'fe'" which would be bad, so there is a config warning for this. This is only needed for old drivers that still have static limits on numbers of units. All the statically limited drivers that I could find were marked. Please exercise EXTREME CAUTION when transitioning! Moral support by: phk, msmith, dfr, asmodai, imp, and others
* Re-support "tape" as an alias for device and clean up a bit more cruftpeter1999-11-091-1/+2
| | | | | left over from the original system (d_dk was for preassigned iostat unit numbers for disks)
* Add option "-d destdir" which instructs config to use another outputmarcel1999-10-301-1/+1
| | | | | | | | | | | | | | | | directory than the default one. If the option is not given, then the output of config is exactly as before. Only when an alternate output directory has been specified will config modify its behavior. Additional changed: o Remove the now conflicting and unused NODEV define. It conflicts with NODEV in sys/param.h. o Rename the now conflicting MACHINE token to ARCH. It conflicts with MACHINE in sys/param.h. o Fix some easy style bugs. o Fix some easy grammar bugs in the manpage. Approved by: peter, archie
* Further cleanup. Also remove the following unused or defunct tokens:peter1999-10-101-30/+0
| | | | and, bio, cam, master, minor, net, priority, sequential, size, slave, trace
* Zap references to 'major' token, it's not used.peter1999-10-081-1/+1
| | | | | Zap references to devices.i386 - it's not used. (neither is devices.pc98 or devices.alpha)
* Don't include trailing whitespace in ID tokens before comments. ie:peter1999-07-011-1/+2
| | | | | | | | options FOO=10 # comment would give FOO the value of "10 " and that caused unwanted touches on the opt_*.h files. I hope I've got this right..
* Understand 'config kernelname' and pretend it was apeter1999-05-101-0/+1
| | | | | | 'makeoptions KERNEL=kernelname'. Warn about any trailing stuff as it's not handled here. This is a simple bandaid, hopefully to head off some complaints from certain people.
* config(8) lobotomy, please see commit msg in sys.phk1999-05-091-7/+1
| | | | (I have no idea why cvs didn't take these changes before.)
* Make options like NO_F00F_HACK work (with context sensitive lexical rules).luoqi1999-04-271-12/+38
|
* More cleanups, tweaks and features.peter1999-04-241-7/+7
| | | | | | | | | | - make this work: options FOO123=456 *without quotes* - grumble (but accept) vector xxxintr, and tty/net/bio/cam flags. - complain if a device is specified twice (eg: 2 x psm0) - don't require quotes around: port IO_COM2 - recognize negative numbers. (ie: options CAM_DEBUG_UNIT=-1) - GC some more unused stuff (we don't have composite disks from config(8)). - various other nits (snprintf paranoia etc)
* Further cleanups. i386_ioconf.c and alpha_ioconf.c were essentially thepeter1999-04-181-23/+7
| | | | | same and were merged into a single newbus_ioconf.c. CG'd some more unused code.
* Get out the blow torch and hack away all the unused stuff. Note thatpeter1999-04-171-3/+0
| | | | | | I zapped the MACHINE_MIPS stuff, it isn't likely to be useful apart from recognition of the machine name. It would be reasonable to expect new ports would look something like the alpha/i386 from a config perspective.
* Removed unused/unusable "ha" keyword. Device classes should never havebde1998-10-161-2/+4
| | | | | | been visible here. Fixed disordering of keyword table by "cam".
* Scaffolding for High Availability code. The actual code will probablyeivind1998-04-021-0/+1
| | | | | | come tomorrow. Submitted by: Simon Shapiro <shimon@simon-shapiro.org>
* Add isa_devtab_cam.gibbs1997-09-211-0/+1
|
* Use err(3), add usage(). -Wall clean.charnier1997-09-151-0/+9
|
* Remove support for "port none" and "port auto", it gains nothing,ache1997-03-281-2/+0
| | | | | | non-standard and not used. "port auto" is equal to "port?" or missing "port" keyword now. "port none" is really probe routine task (return -1 for no ports).
* Backout yacc changes.phk1996-06-021-1/+1
|
* yacc rule changes.phk1996-05-301-1/+1
|
* Implemented a new keyword `disable'. This should be useful for controllingbde1996-04-131-7/+10
| | | | | | | | dangerous drivers in GENERIC. Removed non-comments on #endifs in config.y. Improved output formatting in mkioconf.c.
* Implement support for conf/options and i386/conf/options.i386peter1995-12-111-0/+8
| | | | | | | | | | | | | | | | | | | | | | | Note that this code is dormant unless the options files exist. Also, parsing of quoted options in the config files is improved. What this allows, is all the options in LINT to be specified to be configured as #defines in a file rather than on the CC command line at kernel build time. This means that 'make depend' will catch dependencies on actual *options*, meaning that you can run 'config' and 'make depend' in complete safety WITHOUT removing the compile directory each time. Unfortunately, this requires a pass over the source to get the individual files to #include the new .h files that would be generated by config. This has a small compile time penalty (appears up to about 2% slower) from a "fresh" build. Of course, you should not be needing to do complete rebuilds very often once this was completed, so it would be an overall win for most people. Since this code is dormant and we've got a lot of other things happening on the kernel tree at the moment (prototypes, devfs, static declarations etc) I am not planning on doing any changes to activate this feature just yet.
* Allow the specification of the controller bus when wiring down scsi buses.gibbs1995-07-171-0/+1
| | | | | | | | | | This is performed by using a line similar to: controller scbus0 at ahc0 bus 1 to wire scbus0 to the second bus on an adaptec 2742T controller. Reviewed by: Peter Dufault(dufault@hda.com), Rod Grimes(rgrimes@FreeBSD.org)
* Killed TIMEZONE, DST, and HZ keywords. They have generated a config errordg1995-06-291-3/+0
| | | | | for more than a year now. They've been replaced with userland methods for changing (see adjkerntz).
* Add a new `conflicts' flag for telling when a device is in conflict withjkh1995-05-111-0/+1
| | | | | | | | | | | | others. The flag can be put in descriptive locations, e.g.: device sb0 at isa? port 0x220 irq 7 conflicts drq 1 vector sbintr or device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr But is nonetheless boolean only. You can't turn conflict checking off for only a given type of conflict. I didn't deem it worth the trouble at this stage, and it's far better than the ALLOW_CONFLICT_* that preceeded it.
* Added configuration for SCSI devices wired in place. The documentationdufault1995-03-011-0/+2
| | | | is in "man 4 scsi".
OpenPOWER on IntegriCloud