sevan
39bbc68a3b
Drop main() prototype.
2016-09-05 00:40:28 +00:00
christos
6a9ab0dd0e
Bump version for -no
2016-08-07 21:11:55 +00:00
christos
f138f6c50d
Accept "-no" as a "no" that does not cause errors if the object deleted
...
does not exist.
2016-08-07 10:37:24 +00:00
maya
bd2a0d0ca6
Don't reference older CFATTACH_DECL
2016-07-19 17:01:04 +00:00
pgoyette
e8f1cd85e9
Only emit bdevsw externs for entries in the bdev table, rather than for
...
entries in the cdev table.
2016-07-16 07:13:26 +00:00
wiz
4b483a8522
New sentence, new line. Bump date for previous.
2016-05-02 09:33:15 +00:00
mlelstv
6fc95ff617
Extend syntax of config phrase, a quoted string instead of a device name
...
is passed as root specification string. This can be used to specify a
wedge by name.
2016-04-29 18:18:22 +00:00
christos
0f160f0ea7
match the updated <sys/types.h> definition
2016-03-18 15:05:49 +00:00
uebayasi
e1ddff408d
A few more.
2015-11-22 01:20:36 +00:00
pooka
d0f0cf2fcb
In ioconfname mode, #define IOCONF as the ioconf token.
...
Avoids having to retype the name to call config_init/fini_component().
2015-11-12 14:38:21 +00:00
joerg
2bb600f982
Negating an integer and comparing it to 1 is a fancy way of checking for
...
0, which in this case would be DEVI_ORPHAN. That clearly can't be the
intention here, so switch to using != as operation without negation
instead.
2015-09-12 19:11:13 +00:00
uebayasi
ba0b12db31
Libraries should be built in sub-make. libkern is polluting .PATH too much.
2015-09-11 02:26:22 +00:00
uebayasi
6639db6cc2
About ${CTFCONVERT}.
2015-09-08 05:48:07 +00:00
uebayasi
fe281df765
${MD_OBJS} and friends.
2015-09-08 02:23:34 +00:00
uebayasi
0e43d38dc2
${LD} input files and library (*.a) support.
2015-09-08 00:53:39 +00:00
uebayasi
82a183dddd
Fix previous.
2015-09-04 21:32:54 +00:00
uebayasi
cea9d6a0de
Fix segmentation fault.
2015-09-04 15:50:48 +00:00
uebayasi
9b48d49489
Sort files in ${ALLFILES} in the order of parsing of `files.*'.
...
config(1) reads the first `files.${MACHINE}' when it encounters `machine'.
Then it includes common `files.${MACHINE_SUBARCH}', `files.${MACHINE_ARCH}',
and MI `sys/conf/files' at last. This change makes the first "file" in
`files.${MACHINE}' appear first in ${ALLFILES}.
2015-09-04 10:16:35 +00:00
uebayasi
ce4642ec41
Make config(1) output only ${ALLFILES}, selected input files, and pass it to
...
Makefile.kern.inc, where files are filtered by suffix.
2015-09-04 06:10:47 +00:00
uebayasi
ca8d7a3596
*.o files don't need special handling at all now. Makefile.kern.inc knows
...
*.o input files don't need to get compiled, but need to get linked.
2015-09-04 06:01:40 +00:00
uebayasi
5b92bb3c7a
Output ${ALLFILES}, the list of selected *.[csSo] files, sorted in the exact
...
order config(1) parses "file ..." commands in config(5) files. Define
${CFILES}, ${SFILES}, and ${OFILES} as subset of ${ALLFILES} selected by
suffix.
2015-09-04 05:52:15 +00:00
uebayasi
bc2bf167eb
Now Makefile.kern.inc handles swap<kernel>.c compiling/linking nicely,
...
config(1) can become less hackish.
2015-09-04 05:13:32 +00:00
uebayasi
dc9cfb5d59
Share more code by making *.o handling less special.
2015-09-04 01:24:01 +00:00
uebayasi
bc619545b7
Add generated *.c files (devsw.c and ioconf.c) to ${CFILES} by config(1)
...
internally. ${MI_CFILES} in Makefile.kern.inc is no longer needed.
2015-09-03 14:23:52 +00:00
uebayasi
b5b4952dae
After thought, revert "Generate *.c files under conf/". Generate *.c files
...
under top build directory. *.c files are never placed just under $S/. Keep
this exclusiveness.
2015-09-03 13:53:36 +00:00
uebayasi
9d10d0209d
Pretty-print `Makefile' output.
2015-09-03 13:32:07 +00:00
uebayasi
eaa72931c4
Move `all' target definition to Makefile.kern.inc.
2015-09-03 09:28:00 +00:00
uebayasi
d891b756ba
Define kernel dependency in Makefile.kern.inc.
2015-09-03 06:09:46 +00:00
uebayasi
dfa246e2cf
Fix build.
2015-09-03 06:08:38 +00:00
mrg
aa0a9ba7c2
remove these items:
...
o Disallow unknown options.
o Kill makeoptions.
because they're overly strict and i use these both regularly
to do stuff that isn't in the base src, and i'm quite sure
i am not the only one.
2015-09-03 05:45:16 +00:00
uebayasi
77d324a2b9
In `-S' mode, create symlinks from outside of $S to build directory, for
...
files that are placed outside of $S, so that `Makefile.kern.inc' can see all
files under either $S or build directory.
2015-09-03 02:45:24 +00:00
uebayasi
a453d60989
Fix build.
2015-09-02 16:29:44 +00:00
uebayasi
7a8426662a
Define ${OBJS} in `Makefile.kern.inc'. Relative paths are not truncated
...
(a/b/c/x.c -> x.c) in `-S' mode. Don't provide some explicit rules for `-S'
mode for safety.
2015-09-02 14:17:03 +00:00
uebayasi
558aab1be0
Output relative path for ${CFILES} and ${SFILES} in generated `Makefile'.
...
`Makefile.kern.inc' knows how to deal with $S prefix, so don't bother it in
config(1).
2015-09-02 13:42:14 +00:00
uebayasi
7db0c115b3
Simplify generated `Makefile' by calculating ${OBJS} from merging ${CFILES},
...
${SFILES}, and ${OFILES} except swap<kernel>.o excluded.
2015-09-02 13:06:06 +00:00
uebayasi
dccd2cf552
In `-S' mode, generate *.c files under conf/ subdirectory. Register generated
...
.c files to the `files' list internally.
2015-09-02 05:09:25 +00:00
uebayasi
e53d4b70ba
Fix build.
2015-09-01 20:18:41 +00:00
uebayasi
b06817457f
Experimental ``suffix rules + subdirectories'' build support (-S).
2015-09-01 16:01:23 +00:00
uebayasi
64903d9c8f
Prepare to build subdirectories. Not enabled yet.
2015-09-01 14:32:20 +00:00
uebayasi
57eaa88e97
Bump version for "buildprefix".
2015-09-01 13:45:52 +00:00
uebayasi
2cb009cdd9
Introduce a new syntax, "buildprefix", to specify prefix of files under kernel
...
build subdirectory. This is not used now that everything is built at the
top of kernel build directory. It will become mandatory for source/object
files put out of kernel source tree to specify corresponding build subdirectory.
Only ``no dots'' relative path is accepted as "buildprefix".
2015-09-01 13:42:48 +00:00
uebayasi
974426dd69
Keep track of directory of files internally.
2015-09-01 12:46:20 +00:00
uebayasi
3f0546850b
Clean up struct files.
2015-09-01 12:32:26 +00:00
uebayasi
3374c75eeb
Use per-suffix lists where appropriate.
2015-09-01 12:10:56 +00:00
uebayasi
f5d74fcda3
Abstract struct filetype is no longer needed.
2015-09-01 11:35:46 +00:00
uebayasi
0b130540fb
Merge struct objects into struct files. Keep per-suffix file lists.
2015-09-01 11:22:59 +00:00
uebayasi
a0ed6f857a
Start merging struct files and struct objects.
2015-09-01 10:37:48 +00:00
pgoyette
06cd199b91
Allow redefinition of options (with only a warning message). Removal
...
of non-included options was already only a warning.
This also affects redefinition and removal of file-system and makeoption
entries.
Reviewed and OKd by uebayasi@
2015-09-01 01:50:14 +00:00
uebayasi
5f38d8b6fe
Properly handle absolute prefix.
2015-09-01 01:17:56 +00:00
uebayasi
4c482b808f
Refactor emit file functions. No functional changes.
2015-09-01 00:38:30 +00:00
pgoyette
b899b8fdca
Need to read closer - there was another occurrence of the same tyepo
2015-08-31 12:00:12 +00:00
pgoyette
2ff0a553cb
Tyepo
2015-08-31 11:52:37 +00:00
uebayasi
b877b4042a
Restore the old behavior of "maxusers" to allow the value to be overriden.
...
Problem reported by John D. Baker.
2015-08-31 02:58:25 +00:00
uebayasi
cf356c3efd
Revert "Accept only relative paths ...". This will be redone in much better,
...
stricter way.
2015-08-30 21:58:19 +00:00
wiz
7cb8e9f6ca
Fix a macro usage. Add more markup.
2015-08-30 06:57:51 +00:00
uebayasi
623bd6b2aa
Define compile rules in sys/conf/Makefile.kern.inc except those overriden by
...
"file ... compile-with ...". As rules are still explicit, be careful to not
override by checking .if !target(xxx.o).
2015-08-30 05:12:00 +00:00
uebayasi
0fac7c8310
Define `makeoptions' values as parameters with "makeoptions_" prefix too.
...
C sources are encouraged to include relevant opt_*.h files rather than relying
on -DXXX passed via makefiles.
2015-08-30 01:33:20 +00:00
uebayasi
8c9276859d
No need to define swap<kernel>.o build rule.
2015-08-29 17:42:05 +00:00
uebayasi
b6c3503b87
Define ``normal'' .c/.S rules as .for loops. Still explicit and ugly, but
...
these will be eventually replaced with suffix rules. Tested x68k where .c/.S
rules are overriden with "compile-with".
2015-08-29 17:35:23 +00:00
uebayasi
75298111a7
Convert MAXUSERS, take 2.
...
Define MAXUSERS in opt_param.h and include it from sys/param.h, for more
accurate dependency. Don't define -DMAXUSERS and add it to ${CPPFLAGS}.
config(5)'s "maxusers" syntax doesn't change.
(The version just before revert was OK, but I had something bad in my obj
dirs.)
2015-08-29 14:07:45 +00:00
uebayasi
95712061f0
Revert MAXUSERS. CVS is hard.
2015-08-29 13:34:21 +00:00
uebayasi
9d7c5e580c
Revert MAXUSERS changes. Need fresh air.
2015-08-29 07:33:18 +00:00
uebayasi
8b68b0de02
Fix previous.
2015-08-29 07:24:49 +00:00
uebayasi
4401376950
Define MAXUXERS in opt_param.h. Bump config(1) version.
2015-08-29 07:08:38 +00:00
uebayasi
ca847f032e
Revert "Retire optional `rule' argument of `file' command". It is still used
...
in m68k ports.
2015-08-29 02:54:07 +00:00
uebayasi
b5595827d0
Simplify.
2015-08-28 09:16:29 +00:00
uebayasi
54e231918a
Retire optional `rule' argument of `file' command.
...
This has existed since Rev. 1.1 of Torek's config(8) [1], but probably has
never been used by anyone.
(I can not imagine how a `file' like look like if `rule' is specified.)
[1] http://cvsweb.netbsd.org/bsdweb.cgi/src/usr.sbin/config.new/Attic/files.c?rev=1.1
2015-08-28 09:04:02 +00:00
uebayasi
36644ae2ff
Error out if a given path is absolute.
2015-08-28 08:56:39 +00:00
uebayasi
47065f5afc
Accept only relative paths (from $S) for `file' and `object'. Simplify code.
...
config(1) does not need to be super-smart about path handling, because it is
usually used with make(1), that is much smarter.
Pre-compiled object files, specified using `object', are regarded as read-only
input, thus they should be put under $S (or $S/..), as part of a source tree.
2015-08-28 08:31:28 +00:00
uebayasi
50408f97eb
Global paths looked up at output stage (mk*()) are relative to `srcdir'.
...
Ignore "prefix" by not calling sourcepath().
2015-08-28 03:55:15 +00:00
uebayasi
0b9ddf3cc0
Paths given to "file" and "object" are relative from "prefix" if defined.
2015-08-28 02:59:09 +00:00
uebayasi
a72d45f1a5
+ suffix rules
2015-08-28 01:01:57 +00:00
uebayasi
5e9af25b8a
+ copy symtab
2015-08-27 10:22:12 +00:00
uebayasi
1e1f20e153
One more about linker script, another about genassym.
2015-08-26 06:38:57 +00:00
uebayasi
14880f9a49
I don't like -Ttext .
2015-08-25 13:13:54 +00:00
uebayasi
39d2263741
+ kill makeoptions
2015-08-25 09:01:28 +00:00
uebayasi
7722a65218
TODOs about kernel options.
2015-08-23 01:30:21 +00:00
uebayasi
9c743328e7
Linker script TODO items.
2015-08-22 14:47:05 +00:00
christos
92a97b467e
move driver attach declarations to ioconf.h
2015-08-20 09:44:24 +00:00
pgoyette
b0e637a9da
Insert comment regarding PR/48571 so it doesn't get lost.
...
config(1) ioconf is insufficient for pseudo-devices
config_{init,fini}_component
2015-08-19 03:39:45 +00:00
uebayasi
3dbb19470d
+ pseudo(dev) attach
2015-08-19 03:23:34 +00:00
shm
13fc423c66
Add missed munmap(2) in extract_config
2015-08-08 15:52:41 +00:00
dholland
7fee31e593
Document previously secret -d debug option. Bump date.
2015-07-16 08:42:53 +00:00
christos
b921b70209
remove stray newlines from errors/warnings
2015-06-16 21:12:19 +00:00
uebayasi
c59f84ea6d
Typo in previous.
2015-04-10 03:51:44 +00:00
uebayasi
e29416eeae
More about attribute -> bus, and child configuration.
2015-04-10 03:30:09 +00:00
christos
93da4522d3
appease gcc-4.5.4
2015-01-22 20:01:22 +00:00
uebayasi
d8aa702d35
Revert debug code. Simplify.
2014-12-15 15:49:25 +00:00
uebayasi
fc1f7728b8
config(1): Fix build of old trees (bin/49389) (take 2)
...
Look into sys/conf/Makefile.kern.inc to check if "build_kernel" .USE target
is defined. If not (== old source trees), generate one on the fly.
2014-12-15 15:41:18 +00:00
uebayasi
10b064f35c
config(1): Fix build of old tree (bin/49389)
...
Define the default, empty "build_kernel" target, so that old source trees,
whose sys/conf/Makefile.kern.inc don't have "build_kernel" .USE target, can
be built.
(When "build_kernel" is defined, the target is overriden, as far as
sys/conf/Makefile.kern.inc is included later than the "netbsd: ..." definition
in sys/arch/*/conf/Makefile.*.)
This should address PR bin/49389.
2014-12-15 10:10:24 +00:00
christos
c8da6eb49b
Use proper index types, delete casts, use correct sizeof() in allocations.
2014-11-21 20:46:56 +00:00
uebayasi
57751c8485
Pre-calc file path len/suffix. Misc. clean up.
2014-11-17 00:53:15 +00:00
uebayasi
9eb1865390
Fix oops in r1.30.
2014-11-16 15:10:54 +00:00
uebayasi
d2824e0952
Simpfily code by assuming suffix is a single character.
2014-11-16 14:57:59 +00:00
uebayasi
8a0d672c53
Refactor.
2014-11-16 14:49:12 +00:00
uebayasi
20fd8a9d0f
Consistently wrap long lines in ioconf.c.
2014-11-16 14:26:14 +00:00
uebayasi
73810e5d00
config(1): TODO about namespace (esp. options vs. module)
2014-11-16 07:12:34 +00:00
uebayasi
79fcd6c2d2
config(1): TODO item about swapnetbsd.c
2014-11-16 04:28:09 +00:00
uebayasi
dfd51da465
config(1): Avoid buffer overrun (modular build)
2014-11-15 12:18:55 +00:00
uebayasi
70dd8e7d2a
config(1): Sort objects by weight in modular build
...
Sort per-module kernel objects (*.ko) by dependency weight. Important modules
are placed in lower addresses. The ``machdep'' module will be always placed
in the lowest.
(At this moment, the order is not exact because dependency information is
incomplete in config files (files.*). Thus ``sysmon_power.ko'' comes lower
than ``machdep.ko'' and/or ``uvm.ko''; but still much better than alphabetical
sort.)
2014-11-15 08:21:38 +00:00