summaryrefslogtreecommitdiffstats
path: root/usr.sbin/config
Commit message (Collapse)AuthorAgeFilesLines
* sparc64, and possibly other architectures, pads the length of theimp2010-05-011-7/+11
| | | | | | | | section holding the config file to sh_addralign bytes using NULs. This bogusly triggers an assert. Break out of the loop when we hit an NUL within that many bytes of the end. MFC after: 3 days
* Require the option that's mapped be listed in the options file. Thisimp2010-04-271-9/+28
| | | | | | | | | | | | | | | | | will allow people with old config options to either have it just work (if config is new enough), or get a version error (if their config is about 7.0 or newer) rather than getting a cryptic error about duplicated options in the options file, or getting an error about an unknown option, at which point they'd update their config file only to learn they need a new config, only to learn they didn't really need to update their config file... All this because our version checking was in the wrong place for the past decade... # hopefully this is the last change, and we'll be able to config with an # 8.0 GENERIC file on stable/8 after I merge this change and add the # compat options. MFC after: 3 days
* Redo how we add compat options so as to be compatible with oldimp2010-04-272-78/+81
| | | | | | | | | | | | | | versions of config. Remove support for the syntax OLD = NEW form the options file, and instead have a new file $S/conf/options-compat. This file will be parsed as OLD NEW on each line. Bump version of config. Since nothing in -current ever used this, there's no hazards for current users, so I'm not bumping the version in the Makefiles.$MACHINE. No need, really, for this version bump in -current, but this was introduced into -stable before I realized the version check was ineffective there, so the verison bump doesn't hurt here and keeps the two branches in sync, versionwise, after the MFC. MFC after: 3 days
* Move checking the version up from Makefile generation to just afterimp2010-04-273-24/+62
| | | | | | | | | | | | | | | | | | | | | | | | we've parsed the config file. Makefile generation is too late if we've introduce changes to the syntax of the metafiles to warn about version skew, since we have to try to parse them and we get an parse error that's rather baffling to the user rather than a 'your config is too old, upgrade' which we should get. We have to defer doing it until after we've read the user's config file because we define machinename there. The version required to compile the kernel is encoded in Makefile.machinename. There's no real reason for this to be the case, but changing it now would introduce some logistical issues that I'd rather avoid for the moment. I intend to revisit this if we're still using config in FreeBSD 10. This also means that we cannot introduce any config metafile changes that result in a syntax error or other error for the user until 9.0 is released. Otherwise, we break the upgrade path, or at least reduce the usefulness of the error messages we generate. # This implies that the config file option mapping will need to be redone. MFC after: 3 days
* Revert r206179 (by imp) and do something similar which is more consistentnetchild2010-04-221-1/+1
| | | | | | | | | | with all other corresponding CTF places by changing the corresponding code which is generated by config(8). Or in short, move the '@' from the variable definition to the use of the variable. [1] While I'm here break up a long line. [2] Discussed with: imp [1,2], bde [2]
* Bump minor version of config to reflect the new option remappingimp2010-04-201-1/+1
| | | | | | | | | | | | | feature. The kernel makefiles have specifically not been bumped because nothing uses this new feature and doing so forces everybody to recompile for no good reason. This chnage will be MFC'd where the kernel version numbers for amd64 and ia64 will be bumped, since those are the only two that have use the option remapping feature. Once merged, this will give a better error message to folks that are using buildkernel without buildworld or kernel-toolchain to update their kernels. MFC after: 3 days
* Allow option aliasing. Lines of the form:imp2010-04-152-1/+28
| | | | | | | | | | | | OLD_OPT = NEW_OPT in options* files will now map OLD_OPT to NEW_OPT with a friendly message. This is indented for situations where we need to preserve an interface in the config file in an upwards compatible fashion on a stable branch. Reviewed by: nwhitehorn@ MFC after: 3 days
* - Handle calloc() allocation failures.ru2010-03-305-9/+36
| | | | | | | | | - Fixed a comment. - 2 -> EXIT_FAILURE in some places. - errx() -> err() where appropriate. PR: 144644 Submitted by: Garrett Cooper
* The last big commit: let usr.sbin/ use WARNS=6 by default.ed2010-01-021-1/+0
|
* 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.
* Move the comment to it's correct place.wkoszek2009-02-071-5/+5
|
* Remove leftover of alpha support for config(8)--we have MAP_FAILEDwkoszek2009-02-071-3/+0
| | | | globally defined.
* Make config -x <kernel> only return non-zero characters,wkoszek2009-02-061-2/+13
| | | | | | | | | | so that: config -x <kernel> | grep <something> just works. Reported by: Danny Braniss <danny@cs.huji.ac.il>
* Delete commented out ancient history.imp2009-01-261-14/+0
|
* Allow multiple makeoption lines to be used with the += operator, this permitsthompsa2008-11-226-16/+32
| | | | | | | | | | 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-282-0/+12
| | | | using unquoted paths.
* Revice the way the CTF conversion is done per object. Avoid creating a secondjb2008-06-291-1/+1
| | | | | | shell (which was the problem with the original implementation) and avoid letting make see an empty definition (which was the problem with the current implementation).
* Change the CTF conversion makefile code to use a new line to avoidjb2008-06-091-1/+1
| | | | | | | | spawning another shell. Requested by: Ed Schouten M config/mkmakefile.c
* Add the CTF conversion to the generated makefile. In the case wherejb2008-05-231-1/+1
| | | | NO_CTF or !WITH_CTF, the macro is empty.
* Fix a bug introduced by DEFAULTS feature. When the config fileimp2008-04-101-0/+2
| | | | | | | doesn't exist, we make a directory and then say "oops, that file isn't there" leaving the directory behind. Add a stat for the config file so that we detect this before making the directory. This is semi-lame, but less lame than having this bug.
* Honour the logical current working directory ($PWD) when using config'semaste2008-01-081-0/+18
| | | | | | | | -d destdir option. For an automounted src tree using the logical cwd in the Makefile keeps amd(8)'s mount timeout refreshed. Code to check $PWD's validity cribbed from pwd(1). Discussed on hackers@.
* Spring forward into the late 1970's by following item 5 in the yaccimp2007-12-251-51/+34
| | | | | | | | | | | | | manual's Appendix D ("Old Features Supported but not Encouraged") in the Seventh Edition Unix Programmer's Manual (January, 1979) by retiring the " = {" method of of action specification in favor of a plain "{". It is no longer necessary for this bootstrap program to be compatible with 6th Edition systems. Some yaccs in the wild do not support this old syntax any more, and compatibility with those systems is more important these days (as there are easily 7 orders of magnitude more of them than real v6 systems today). Reviewed by: jhb@ and dds@ (the latter gave the reference).
* Fixed "make checkdpadd" (missing library dependencies).ru2007-10-011-1/+1
| | | | Approved by: re (kensmith)
* Fix some problems that affect multiple file inclusion. Bruce foundimp2007-05-173-73/+26
| | | | | | | | | | | | | | this bug and submitted these patches to dunstan@. He sent them to me to test, and I discovered they were needed for the atmel kernel config files. Since we were playing with them in the terminal room after the developer's summit today, I thought I'd go ahead and commit them to allow those folks that now have atmel hardware (thanks Andre) a chance to try it out w/o my help. Since dunstan@ is asleep right now, risk stepping on his toes a little by going ahead and committing this change. Submitted by: dunstan@, bde@ Tested by: bde@
* Handle !INCLUDE_CONFIG_FILE entirely in the kernel. This should make somewkoszek2007-05-161-4/+4
| | | | | | | | developers happy, since it will let them to use old config(8) with newer kernels. Reviewed by: imp Approved by: imp
* Bump config(8) version and build requirement for config(8) to 600006. Thiswkoszek2007-05-131-1/+1
| | | | | | | | | | is caused by my latest changes to config(8). You're supposed to install new config(8) in order to prevent yourself from seeing a warning about old version of that tool. You should configure the kernel with a new config(8) then. Oked by: rwatson, cognet (mentor)
* This is loser's commit message:wkoszek2007-05-121-1/+12
| | | | | | | | | | | Remember about tricky cases, where options contain unfriendly characters, from the ANSI-C string point of view ('"' in this case). The x09 build breakage was caused by SC_CUT_SEPCHARS options. I did test this patch number of times; each time unprofessionally and inappropriately. OKed by: cognet (mentor)
* Add ${.CURDIR} before kernconf.tmpl in order to let the build see newlywkoszek2007-05-121-1/+1
| | | | | | added kernconft.tmpl file. Approved by: cognet (mentor)
* Improve INCLUDE_CONFIG_FILE support.wkoszek2007-05-127-90/+389
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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@
* Don't leak files.imp2006-10-241-3/+2
| | | | | | This also eliminates the need for ifp init. Submitted by: ru@
* Document multiple hints lines.imp2006-10-241-4/+18
| | | | | Tweak machine description to more accurately reflect second argument being the cpu architecture. Note correspondence with MACHINE and MACHINE_ARCH.
* End my resistance to jmg's multiple hints files and bring in supportimp2006-10-244-15/+19
| | | | | for having multiple hints files generate a correct hints.c (eg, with all the specified ones catenated together).
* style(9) pedantryimp2006-10-241-7/+7
|
* Since multiple hints lines do not work, make doing that a fatal error.imp2006-10-241-0/+3
|
* Comment out the first paragraph; while it tells the true (we're usingru2006-10-211-14/+14
| | | | | | the old BSD config(8) utility in FreeBSD), it does not look good. PR: docs/100328
* Added rudimentary support for the "include" directive (inside "files").ru2006-10-012-1/+15
| | | | | This will be used to split sys/conf/files into multiple files similar to how this is done in NetBSD.
* Remove unused variables.stefanf2006-07-201-3/+1
|
* Remove an unused variable.stefanf2006-07-191-2/+1
|
* Use calloc() instead of zeroing the memory our own.delphij2006-06-074-22/+11
|
* Document the two argument form of the "machine" directive.jkoshy2006-02-121-1/+12
| | | | | Reviewed by: imp MFC After: 3 days
* Allow newer config versions to config older versions with the sameimp2006-02-032-21/+30
| | | | | | | | major number. Reviewed by: ru@, jhb@, arch@ (a few months ago) # this is subject to refinement based on experience.
* - Change the exit message from "make cleandepend; make depend" toflz2006-01-141-1/+1
| | | | | | | | | "make cleandepend && make depend". PR: bin/91765 Submitted by: Soeren Straarup <xride@x12.dk> Approved by: cpercival MFC after: 3 days
* - Avoid adding devices multiple times to the device list.ru2005-12-302-33/+66
| | | | | | - Avoid adding options multiple times to the option list. Based on a patch by: Matt Emmerton <matt@gsicomp.on.ca>
* Clean up most of the "XXX"-tagged items:ru2005-12-304-17/+39
| | | | | | | | | | | - The code that creates hints.c and env.c from the skeleton files moved into separate functions. - Sanity checks for missing "ident" and "cputype" directives moved into main(), alongside the existing check for "machine". PR: bin/90310 Submitted by: Matt Emmerton <matt@gsicomp.on.ca>
* config.5 was repocopied from share/man/man5/ to usr.sbin/config/.ru2005-12-091-1/+1
| | | | Repocopied by: peter
* Document "makeoption", "nocpu", and "nomakeoptions" directives.ru2005-12-031-2/+29
| | | | (Indeed this should be repo-copied to src/usr.sbin/config/.)
* Add "makeoption" as an alias to "makeoptions", for symmetry.ru2005-12-031-0/+1
|
* Style: use S_ISDIR() (submitted by bde@) and eq() where appropriate.ru2005-11-301-4/+3
|
* The DEFAULTS changes caused the user specified config file to be openedpeter2005-11-291-0/+5
| | | | | | | | | | | | | | | much later than before, and it is now after we do a mkdir ../compile/FILE. As a result, if you do 'config DOESNOTEXIST', it now creates the directory ../config/DOESNOTEXIST. It did not do that before. If DEFAULTS does not exist, it still fails early before any permanent changes. This shameless hack restores the old behavior of ensuring the config file actually exists before mkdiring its counterpart directory. Now I can rmdir ../compile/D and it will stay dead, after my fingers keep sabotaging me with 'config D<tab><enter>'. (Some of my kernel names started with D, which used to be 1-character unique and my fingers knew this very well...)
* 600004 is a better new version than 700000 based on some future commits toimp2005-11-281-1/+1
| | | | | | | | this file. With ru@'s approval, change it to this version. In this case we had to bump the version because the old parser would choke on | in the new 'or' syntax and consider that a device. Approved by: ru@
OpenPOWER on IntegriCloud