diff options
author | peter <peter@FreeBSD.org> | 1995-12-11 10:52:34 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1995-12-11 10:52:34 +0000 |
commit | 7a7fb14fa9b36f5a77f0861c85e6bb995aa6b757 (patch) | |
tree | ef03c70fe9e388e67ab0c2e18b675681568a8009 /usr.sbin/config/config.h | |
parent | d7af2f0a80cee1f5b4fa606c79490ec68445ee7b (diff) | |
download | FreeBSD-src-7a7fb14fa9b36f5a77f0861c85e6bb995aa6b757.zip FreeBSD-src-7a7fb14fa9b36f5a77f0861c85e6bb995aa6b757.tar.gz |
Implement support for conf/options and i386/conf/options.i386
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.
Diffstat (limited to 'usr.sbin/config/config.h')
-rw-r--r-- | usr.sbin/config/config.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/usr.sbin/config/config.h b/usr.sbin/config/config.h index c906e2b..41e492f 100644 --- a/usr.sbin/config/config.h +++ b/usr.sbin/config/config.h @@ -174,9 +174,16 @@ struct cputype { struct opt { char *op_name; char *op_value; + int op_ownfile; /* true = own file, false = makefile */ struct opt *op_next; } *opt, *mkopt; +struct opt_list { + char *o_name; + char *o_file; + struct opt_list *o_next; +} *otab; + char *ident; char *ns(); char *tc(); @@ -216,4 +223,6 @@ int debugging; int maxusers; u_int loadaddress; +extern int old_config_present; /* Old config/build directory still there */ + #define eq(a,b) (!strcmp(a,b)) |