#
272461 |
|
02-Oct-2014 |
gjb |
Copy stable/10@r272459 to releng/10.1 as part of the 10.1-RELEASE process.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
269825 |
|
11-Aug-2014 |
imp |
MFC: Merge in the changes in -current:
Support ! operator in "files" files. Improve error detection and reporting Cleanup code to make it easier to maintain. Remove mandatory keyword: it has been used for 17 years. Bump version number (we should have bumped for -I too, but didn't)
r261501 | imp | 2014-02-04 17:26:11 -0700 (Tue, 04 Feb 2014) | 5 lines Fix ! by not clearing not at the bottom of the loop. Add a blank line Submitted by: bde (blank line)
r261493 | imp | 2014-02-04 11:28:58 -0700 (Tue, 04 Feb 2014) | 5 lines Implement the '!' operator for files* files. It means 'include this only if the specified option is NOT specified.' Bump version because old config won't be able to cope with files* files that have this construct in them.
r261446 | imp | 2014-02-03 12:14:36 -0700 (Mon, 03 Feb 2014) | 5 lines Convert the loop by gotos into a for loop to improve readability. I did this only with the inner loop for the token parsing, and not the outer loop which was understandable enough when the extra layers of looping went away...
r261445 | imp | 2014-02-03 12:10:33 -0700 (Mon, 03 Feb 2014) | 4 lines Fix a bug introduced in r261437 that failed to honor "optional profiling-routine" to work, since profiling-routine is not really an option or a device, but a special case elsewhere in the code.
r261444 | imp | 2014-02-03 11:56:41 -0700 (Mon, 03 Feb 2014) | 2 lines Slight cleanup to the error messaging to compress code vertically...
r261442 | imp | 2014-02-03 11:31:51 -0700 (Mon, 03 Feb 2014) | 2 lines Better error messages when EOF is hit in the middle of a phrase.
r261438 | imp | 2014-02-03 09:54:53 -0700 (Mon, 03 Feb 2014) | 5 lines Move the check for standard keyword + optional inclusion specifier to its proper location. Otherwise you could have 'file.c standard pci' without an error. This construct isn't in our tree, and has no well defined meaning.
r261437 | imp | 2014-02-03 09:47:10 -0700 (Mon, 03 Feb 2014) | 4 lines Don't believe we have a requirement until after we've checked all the known key words. This will make error messages slightly better in weird corner cases, but should otherwise be a nop.
r261436 | imp | 2014-02-03 09:46:01 -0700 (Mon, 03 Feb 2014) | 3 lines In the 17 years since r30796, the mandatory keyword has never been used in any files as far as I can tell, and is currently unused. Retire it.
r261435 | imp | 2014-02-03 08:10:44 -0700 (Mon, 03 Feb 2014) | 6 lines Slightly deobfuscate read_file() and likely pessimize the runtime performance by epsilon. (Translation: elminate bogus macros that hid 'returns' making it hard to read and moved a block of code inline rather than at the end of the fuction where it was effectively a 'gosub' kind of goto).
|
#
256281 |
|
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
#
218544 |
|
11-Feb-2011 |
imp |
Generate MACHINE= and MACHINE_ARCH= lines based on the machine directive. Once this is MFC'd, we can move these out of the template files where they are (incosnsitently) defined.
MFC after: 1 week
|
#
215034 |
|
09-Nov-2010 |
brucec |
Fix typos.
PR: bin/148894 Submitted by: olgeni
|
#
211326 |
|
15-Aug-2010 |
imp |
Given the lag between introducing the options-compat and fixing the bug in the config file was long, and merged to stable, we have to bump the version here so that stable/8 kernels can have their required version number bumped to make sure the right config is used.
MFC after: 3 days
|
#
209969 |
|
13-Jul-2010 |
nwhitehorn |
Enhance config to handle MACHINEs with multiple architectures:
- Passing -m to config will now print the MACHINE and MACHINE_ARCH given in the passed kernel configuration file and then exit. - If an option is defined in options.MACHINE with the same name as the architecture of the kernel being configured, that option will be considered set. This allows conditional compilation based on CPU architecture.
Config version is now 600010.
Reviewed by: imp
|
#
207263 |
|
27-Apr-2010 |
imp |
Redo how we add compat options so as to be compatible with old 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
|
#
206915 |
|
20-Apr-2010 |
imp |
Bump minor version of config to reflect the new option remapping 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
|
#
185186 |
|
22-Nov-2008 |
thompsa |
Allow multiple makeoption lines to be used with the += operator, this permits 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.
|
#
169515 |
|
13-May-2007 |
wkoszek |
Bump config(8) version and build requirement for config(8) to 600006. This 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)
|
#
162936 |
|
01-Oct-2006 |
ru |
Added rudimentary support for the "include" directive (inside "files"). This will be used to split sys/conf/files into multiple files similar to how this is done in NetBSD.
|
#
155240 |
|
03-Feb-2006 |
imp |
Allow newer config versions to config older versions with the same major number.
Reviewed by: ru@, jhb@, arch@ (a few months ago)
# this is subject to refinement based on experience.
|
#
152889 |
|
28-Nov-2005 |
imp |
600004 is a better new version than 700000 based on some future commits to 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@
|
#
152862 |
|
27-Nov-2005 |
ru |
Make config(8) understand ORed dependecies in "files*" and improve tracking of known devices. Bump config(8) version.
|
#
152164 |
|
07-Nov-2005 |
rwatson |
Minor comment tweak to prevent gcc from being upset about the substring /* appearing in a comment.
|
#
152162 |
|
07-Nov-2005 |
peter |
Add some rationale about when to bump and not bump the config version. Clarify that it is not like the shlib versions, and not like param.h's __FreeBSD_version/osreldate either.
When config(8) was actively changing a while back, the interface between config and the build system (eg: /sys/conf/files.* and Makefile.*) was changing rapidly. configvers is a version number of that interface.
User specified config files do not have a version number. The decision about whether a user supplied config file is syntactically valid or not belongs to the parser and sanity checks, not an arbitary number.
|
#
152027 |
|
04-Nov-2005 |
imp |
since nocpu isn't used in the kernel config base, we don't need to bump the version. Peter Wemm, John Baldwin and I hammered this out after the last time I needlessly incremented the version.
|
#
152018 |
|
03-Nov-2005 |
ru |
Implement the "nocpu" directive.
Requested by: rwatson
|
#
151763 |
|
27-Oct-2005 |
jhb |
Bump config(8) version for the DEFAULTS change.
|
#
144509 |
|
01-Apr-2005 |
imp |
Allow one to specify a second parameter to the machine line. This allows us to specify the machine_arch as well as machine. If specified then a second link will be made, similar to machine, from $MACHINE_ARCH to $S/$MACHINE_ARCH/include.
This is for ports where MACHINE != MACHINE_ARCH (pc98 today, others in the future?).
Reviewed by: arch@, nyan@
|
#
141655 |
|
10-Feb-2005 |
des |
Bump the version number for the addition of devices / nodevices.
|
#
134542 |
|
30-Aug-2004 |
peter |
Kill count device support from config. I've changed the last few 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.
|
#
129073 |
|
09-May-2004 |
cognet |
Add a new "files" directive, which allows to include a files.foo file directly from a kernel config file. Bump config version to reflect this change.
|
#
113536 |
|
15-Apr-2003 |
phk |
Bump the config version to force people to upgrade their config(8) so the fix for emitting multiple instances of .o files will prevent link errors on LINT.
|
#
99923 |
|
13-Jul-2002 |
bde |
Moved the setting of all profiling-related variables except the key one (PROFLEVEL) to kern.pre.mk so that it is easier to manage. Bumped config version to match.
Moved the check for cputype being configured to a less bogus place in mkmakefile.c.
|
#
91002 |
|
20-Feb-2002 |
peter |
Commit some infrastructure for turning on -Werror for kernel compiles. It doesn't actually do it yet though. This adds a flag to config so that we can exclude certain vendor files from this even when the rest of the kernel has it on. make -DNO_WERROR would also bypass all of it.
|
#
87861 |
|
14-Dec-2001 |
peter |
Bump configvers for different handling of maxusers.
|
#
82393 |
|
27-Aug-2001 |
peter |
Enable hardwiring of things like tunables from embedded enironments that do not start from loader(8).
|
#
79079 |
|
02-Jul-2001 |
imp |
Bump config version in config.
|
#
71251 |
|
19-Jan-2001 |
peter |
Implement option strings that we can use in #ifdefs (where unavoidable) as a replacement for the evil #define NFOO. If 'device npx' is in the static kernel, a synthetic option '#define DEV_NPX 1' will be available to stick in an opt_xxx.h file. "#if NNPX > 0" can be replaced with "#ifdef DEV_NPX" and we can get rid of the overloaded meaning of the device count mechanism.
|
#
69135 |
|
25-Nov-2000 |
peter |
Make the xxxFILES= list generation generic. This makes it easier to add things like MFILES= or CONFFILES= without having to modify config code.
|
#
67109 |
|
14-Oct-2000 |
phk |
Make it possible to specify profiling in the kernel config file.
Do so for LINT.
|
#
65091 |
|
25-Aug-2000 |
peter |
If a ${KERNEL}.hints file exists, and no hints are specified explicitly, then include the hints with a marker indicating that it is a fallback. The kernel side of this is to come shortly.
|
#
61640 |
|
13-Jun-2000 |
peter |
Borrow phk's axe and apply the next stage of config(8)'s evolution.
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
|
#
61523 |
|
10-Jun-2000 |
peter |
A checkpoint of a part of a work-in-progress. Some more cleanups for config(8). This commit allows control of the creation of the #include "foo.h" files. We now only create them explicitly when needed. BTW; these are mostly bad because they usually imply static limits on numbers of units for devices. eg: struct mysoftc sc[NFOO]; These static limits have Got To Go.
|
#
56481 |
|
23-Jan-2000 |
charnier |
Use Ns and Sx. -current is 4 not 3.
|
#
56444 |
|
23-Jan-2000 |
peter |
Bump configvers.h as a precaution. Although existing config files will work unmodified still, new config files won't work on the old ones.
|
#
55636 |
|
09-Jan-2000 |
peter |
Bump configversion. The controller/device changes are upwards but not downwards compatable. If you try and config a s/controller/device/ kernel with an old config(8), the results will be less than satisfactory.
|
#
50479 |
|
27-Aug-1999 |
peter |
$Id$ -> $FreeBSD$
|
#
46821 |
|
09-May-1999 |
peter |
Put on my viking helmet from the closet, and get out the war axe and "retire" some more stuff.
|
#
46815 |
|
09-May-1999 |
phk |
config(8) lobotomy, please see commit msg in sys.
(I have no idea why cvs didn't take these changes before.)
|
#
46036 |
|
24-Apr-1999 |
peter |
Bump configvers; when the updates to generic/lint get committed, the old config has severe indigestion.
|
#
45721 |
|
16-Apr-1999 |
peter |
Corresponding minimal changes for kernel configuration after new-bus commit.
|
#
45703 |
|
15-Apr-1999 |
bde |
Made booting with -a work for all configurations. Previously it only worked for configurations with "swap on generic".
usr.sbin/config/config.y: - ignore all "swap [on] device ...' specifications except for warning about them. They haven't done anything related to swap for almost 4 years, and were previously silently ignored, except for "swap on generic" which stopped swap${KERNEL}.c from being generated. Code to support swapping is now deader than before.
usr.sbin/config/mkswapconf.c: - don't generate a dummy setconf() function in swap${KERNEL}.c.
sys/i386/conf/files.i386: - swapgeneric.c is now standard. It should be merged into autoconf.c so that it doesn't conflict with swap${KERNEL}.c for kernels named "generic".
sys/i386/i386/autoconf.c: - don't call setroot() for mfs roots. Since setroot() doesn't do anything harmful, this was just a waste of time, except possibly for booting with -a it may have helped prevent an undesireable call to setconf() by finding a bogus rootdev. - honor -a for ffs roots. -a now overrides all other ways of specifying the root device. Previously, -r had precedence over -a, and the -a handling was usually a no-op. - don't honor -a for non-ffs roots, since it would currently just get in the way of a clean panic.
sys/i386/i386/swapgeneric.c: - don't declare things that are now always declared in swap${KERNEL}.c. Don't decide things that are now decided in autoconf.c. Code to support the "generic" case is now dead instead of useless.
|
#
45660 |
|
13-Apr-1999 |
peter |
Clean up the -g/DEBUG handling. This logic can go in the Makefile so that config -g can work the same as: makeoptions DEBUG="-g"
|
#
45427 |
|
07-Apr-1999 |
grog |
1. Modify config to issue different code for debugging. 2. Config complains if you use -g:
Debugging is enabled by default, there is no ned to specify the -g option
3. Config warns you if you don't use -s:
Building kernel with full debugging symbols. Do "config -s BSD" for historic partial symbolic support. To install the debugging kernel, do make install.debug
(BSD was the name of the config file I used; I print out the same name).
4. Modify Makefile.i386, Makefile.alpha, Makefile.pc98 and config to work if a kernel name other than 'kernel' is specified. This is not absolutely necessary, but useful, and it was relatively easy. I now have a kernel called /crapshit :-)
5. Modify Makefile.i386, Makefile.alpha, Makefile.pc98 "clean" target to remove both the debug and normal kernel.
6. Modify all to install the stripped kernel by default and the debug kernel if you enter "make install.debug".
7. Update version number of Makefiles and config.
|
#
41176 |
|
15-Nov-1998 |
dfr |
* Change 'struct resource' to 'struct config_resource'. * Bump config version.
|
#
40614 |
|
23-Oct-1998 |
bde |
Ignore `vector xxxintr' specifications except for checking their syntax. Interrupt handlers are now configured in drivers.
Didn't update config/SMM.doc. It doesn't have any i386 examples (not even `isa').
Bumped CONFIGVERS. This is not necessary for -current yet, but using the new config with old system sources gives null pointers for all vectors.
|
#
39307 |
|
15-Sep-1998 |
gibbs |
Bump config version. Also mention that even after rebuilding a new config, you may need to resynchronize your config file with syntax or name changes documented in GENERIC or LINT.
|
#
38782 |
|
03-Sep-1998 |
nsouch |
Reviewed by: Doug Rabson Submitted by: nsouch 'local' token added to support new bus architecture .c files generated by .m files.
|
#
37580 |
|
12-Jul-1998 |
bde |
Removed all traces of PARAM in Makefile.i386. Incremented CONFIGVERS to reflect the dependency of Makefile.i386 on nothing being put in PARAM.
Config versioning is too closely coupled with the Makefile.i386.
|
#
37035 |
|
17-Jun-1998 |
bde |
Don't generate declarations for isa device structs in "ioconf.h".
Don't generate declarations for isa interrupt handlers at all. Isa interrupt handlers are now declared in <i386/isa/isa_device.h> but should be converted take a `void *' arg and staticized as soon as possible.
Updated CONFIGVERS. New configs are very incompatible with previous versions.
|
#
30977 |
|
06-Nov-1997 |
msmith |
Bump configvers to 300003 to account for the crd->card (and related) namespace changes.
|
#
30638 |
|
21-Oct-1997 |
peter |
Recognize a %VERSREQ=nnnnn string in the system Makefile. Both config(8) and the kernel will have a 'config interface version number'. If an incompatable change is made to the kernel that requires a rebuild of config(8) (such as the cam devtab stuff), then the version number would be bumped in both places. If a user neglects to rebuild config, then they will get a nagging (but non-fatal) warning that they need to rebuild config.
|