Commit Graph

44 Commits

Author SHA1 Message Date
enami 1b1b19c5c5 Emit `.MAIN: all' to force the target `all' as default target. 2000-02-01 05:13:17 +00:00
thorpej aa1aaac03e Allow abolute pathnames as prefixes. 2000-01-20 00:08:08 +00:00
thorpej 64f20db21b Make the outputted INCLUDES directives a bit more cosmetically appealing. 1999-07-09 18:45:31 +00:00
mrg ecdad0ec33 clean up a bit after jason :)
- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
1999-07-09 09:52:55 +00:00
thorpej 152af09e65 Add a mechanism to specify prefixes that are transparently prepended
to file specifications.  The prefixes are arranged in a stack, and
nest, so that file, object, and include specifications are normalized,
and all end up relative to the kernel compile directory.

For example, in the kernel config file:

# Pull in config fragments for kernel crypto
prefix ../crypto-us/sys 			# push it
cinclude "conf/files.crypto-us"			# include it if it's there
prefix						# pop it

and in files.crypto-us:

file netinet6/esp_core.c                ipsec & ipsec_esp
file netinet6/esp_output.c              ipsec & ipsec_esp
file netinet6/esp_input.c               ipsec & ipsec_esp

...generates the following in the kernel Makefile:

        $S/../crypto-us/sys/netinet6/esp_core.c \
        $S/../crypto-us/sys/netinet6/esp_output.c \
        $S/../crypto-us/sys/netinet6/esp_input.c \

By placing this all in the kernel config file, all the magic involved in
reaching into non-standard kernel source directories is placed into a file
that the user is expected to edit anyway, and reasonable examples (and
sane defaults, for typical source checkouts) can be provided.
1999-07-09 06:44:58 +00:00
mycroft 01e0430cea Allow absolute path names for `object' files. 1999-05-23 19:30:30 +00:00
mycroft afd308129a Output a dependency on `newvers' for *every* kernel. It only gets run at most
once per make(1) invocation anyway, and not doing this screwed up parallel
makes.
1999-03-30 12:36:50 +00:00
jonathan eaa351c789 * Check that any declared option (def{opt,param,flag}, filesystem
is declared at most once.
* Do option dependency across all def{opt,param, flag}.
* Make the default value of otherwise-unspecified defopt's be 1,
  for consistency with non-defopt'ed options.
* Wrap an abstraction layer (macros) around tests for defopt, filesystem,
  defparam, etc. to catch outdated  defopt-vs-filesystem tests.
1998-06-30 03:30:56 +00:00
lukem 73d91b2129 WARNSify, deprecate register, remove unused functions 1997-10-18 07:58:56 +00:00
mycroft 7d58ce9471 Add `object' and `library' keywords to pull in precompiled .o and .a files.
Syntax is like the `file' keyword; e.g.:
object	arch/i386/i386/mumble.o		[mumble] [needs-flag]
Largely from Michael Richardson in PR 3833, with some changes by me.
1997-10-10 10:27:53 +00:00
thorpej e14a0d029f Add support for generating "option headers". These allow options to
be included in object dependencies.  config(8) is told to generate
a header for a particular option with the new "defopt" keyword, used
in the files.* system description files.  Options that are placed in
header files are not given -D... cpp flags.

This approach allows options to be turned into headers incrementally,
rather than all at once, and allows for non-header options, as well.
1997-02-02 21:12:30 +00:00
thorpej 07c71aa7f7 Implement new grammar and semantics for specifying file systems
and the root device:

- New "file-system" keyword is used to configure file systems into
  the kernel.
- New way of specifying root device, which allows root file system
  type to always be specified.  Examples:

	config gennetbsd swap generic
	config sdnetbsd root on sd0a swap on sd0b
	config nfsnetbsd root on nfs

  are replaced by:

	config gennetbsd root on ? type ?
	config sdnetbsd root on sd0a type ffs swap on sd0b
	config nfsnetbsd root on ? type nfs
	config lenetbsd root on le0 type nfs

  Note that specific network interfaces may now be specified as
  the root device.
- swapgeneric.c is no longer used; generate a swap*.c file for each
  "config" line in the kernel configuration file.
1997-01-31 03:12:30 +00:00
ghudson e312e1563e Don't canonicalize relative paths to the source tree any more; libkern
and libcompat can handle them as long as they begin with '.'.  If a
relative path doesn't begin with '.', add a "./" before it.
1996-09-23 05:04:23 +00:00
mycroft ab6ebadde6 Add `source' and `build' directives, and corresponding options, per discussion
on tech-kern.  (See man page.)  Implementation by Greg Hudson.
Also, remove special case for i386 in vector handling, although this code isn't
actually used any more.
1996-08-31 20:58:16 +00:00
mycroft b9ae4a5e3f Remove `config-dependent' and `device-driver' flags. 1996-08-12 00:55:54 +00:00
cgd 3ac7667c57 add BSDI-style expression support to optional file specifiers. Code mostly
taken from the parts of BSDI's 'config' which are freely-distributable
(under the LBL/UC Regents license), and adjusted to fit into our version.
1996-03-17 13:18:15 +00:00
cgd 9c4f9d2daa spaces vs. tabs, spaces/tabs at EOL bogons. 1996-03-17 06:29:19 +00:00
thorpej c5f7cf3a9e RCS id police. 1996-03-03 17:21:25 +00:00
cgd 7d351bb3f4 fix thinkos in emitobjs() and emitfiles() that would cause empty files
lists to not have a newline properly emitted.  (It was emitting a
newline only if the line position was != 7.  However, the only time the
line position was 7 was right after the initial variable assignment
string (e.g. "OBJS=\t") was printed.)
1996-02-23 00:39:42 +00:00
cgd 064307e690 config.new has been moved here. names updated to match. 1995-04-28 06:54:58 +00:00
cgd f39163138d maxfdescs checks out 1994-05-21 08:32:32 +00:00
deraadt 4b24a3521e rainse() -> raisestr(), per <arnej@fm.unit.no> 1994-04-05 23:57:26 +00:00
mycroft 0d7f067f06 Fix `all:' line. 1994-03-10 22:09:51 +00:00
mycroft 26731dd3eb Support device drivers with multiple names, and do the right thing for fd and
wd.
1994-03-10 19:50:43 +00:00
cgd 91068203d6 changes for amiga 1994-02-01 02:07:11 +00:00
cgd 2dae0c7cb0 add support for "machinearch" internal variable. if "machinearch"
is different than the "machinename" internal variable, read
machinearch's files.${machinearch} and add it to the list of files
for the machine.  Also, regardless of whether or not they're different,
create a ${machinearch} sylink (or directory) pointing to the machinearch
include files (or containing them).
1994-01-08 10:33:43 +00:00
deraadt 9ae8a636f9 Add MACHINE_PMAX support from rick & ralph. 1993-10-14 01:22:27 +00:00
phil 4c44872dde Adding changes for the pc532 machine. The NO_SYMLINK is for compilation
under Minix on the pc532, which has no symlinks.
1993-09-15 21:15:19 +00:00
brezak 0c27d6751c Only output load address is using 'at'. 1993-09-13 15:27:38 +00:00
brezak e443c955ff Need to define load address in PARAM. 1993-08-28 00:03:51 +00:00
mycroft 0534b030d1 Don't include PROFILING type files in OBJS and SRCS, and don't partially output
dependencies for them.
1993-08-03 00:02:01 +00:00
mycroft e9d867ef50 Add RCS identifiers. 1993-08-01 17:54:45 +00:00
brezak 19049fea1a Add option dependency generation. 1993-07-23 03:01:47 +00:00
mycroft 97159f53d2 Allow specifying the load address in the config file. Again, defaults to
KERNBASE.

To use this, on the `config' line you specify, `at address'.  For example:

config          netbsd  at 0xfe100000 root on sd0 swap on sd0 and sd1
1993-07-18 10:07:36 +00:00
cgd f0e2d2191c changes from mw to support nfs swap/root specification 1993-07-07 10:47:00 +00:00
andrew 349ac16602 Fixed typo. 1993-06-17 08:21:42 +00:00
cgd 864a094e19 do the right thing for vers.o. i.e. don't make newvers if nothing
has changed.
1993-05-24 11:04:45 +00:00
cgd 4ee5795095 last of the "arch" changes 1993-05-18 11:51:52 +00:00
cgd c895b3c04f add changes for 'arch' 1993-05-18 08:56:31 +00:00
cgd 50fa568f9d make config use a /sys/${machine}/compile directory, rather than
/sys/compile
1993-05-17 09:10:06 +00:00
glass fea6b7920f Welcome to the new order. config(8)'s code for reading files, files.i386,
and files.kernel has now been completely replaced.
features supported: not nearly as broken as the stuff before
		    expression support for dependencies
		    support for 'requires'
		    no longer generates lots of stupid unnecessary .h files
		    broke lots of broken stuff, and forced fixing it.
(docs to arrive later)
		    added '-k' option for continue even after error
		    documented '-g'
1993-04-10 12:11:55 +00:00
cgd 83bb0a658b now can config `maxfdescs number', similar to `maxusers' to set
the max. number of fd's a user is limited to.
1993-04-04 04:33:03 +00:00
cgd e541169ce2 after 0.2.2 "stable" patches applied 1993-03-21 18:04:42 +00:00
cgd 61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00