102 Commits

Author SHA1 Message Date
chuckr
5f34b128da Cause modules to build with the kernel build. Modules are removed
from the sys Makefile's SUBDIRs.  This is conditioned in make.conf by the
NO_MODULES variable and the existence of the modules directory.  The
actual location of the modules is not modified.  Changes in Makefiles
only, this does not affect Peter's recent changes.

Reviewed by:	Peter Wemm, who warned me I would get some flack, and
		he had the good idea for the NO_MODULES variable.
2000-05-02 02:26:04 +00:00
peter
1aa88f6889 LOAD_ADDRESS is not used here. See conf/ldscript.* for the link base
address.
2000-04-29 06:29:39 +00:00
dfr
c9bf4be3c2 * Factor out the object system from new-bus so that it can be used by
non-device code.
* Re-implement the method dispatch to improve efficiency. The new system
  takes about 40ns for a method dispatch on a 300Mhz PII which is only
  10ns slower than a direct function call on the same hardware.

This changes the new-bus ABI slightly so make sure you re-compile any
driver modules which you use.
2000-04-08 14:17:18 +00:00
dfr
c41aef9448 Make it possible to include a device interface description by a single
line in files or files.${arch} instead of 13 lines of code.

This is a small chance that this will break the alpha kernel build - I'll
fix it this evening if it does.
2000-04-05 10:33:55 +00:00
peter
1f6e099839 Include param.o in the list of files that we scan for linker sets.
Without this, we cannot put sysctl nodes in there.
2000-03-29 23:20:35 +00:00
peter
816e2438e4 Bump configvers.h as a precaution. Although existing config files will
work unmodified still, new config files won't work on the old ones.
2000-01-23 12:24:48 +00:00
peter
e826bee2b9 Put on my asbestos suit and move $mach/conf/*.$mach to conf/*.$mach as
hinted at in the previous config(8) commits.  I've spoken about this with
a few people and after the initial suprise wore off they thought it wasn't
a bad idea.  The upshot of it is that all the files*, Makefile*, options*
files are all right next to each other in the hope that people making
changes to one set will remember the others.

Note, config(8) looks to sys/conf first, and falls back to sys/$mach/conf
still, so this doesn't stop people working in subdirs for new platforms.
But once it's in the tree it can be moved next to the other files so that
the non-i386 platforms are (hopefully) treated a little better than as if
they were "second class" ports.

This does not change any user editable files.  the config program is
still run in the same directory as before, the per-platform files
(GENERIC, LINT etc) are still in the same place.
2000-01-09 15:29:10 +00:00
kato
8dcdc1434d Synced with sys/i386/conf/Makefile.i386 (MACHINE -> MACHINE_ARCH).
Pointed out by:	peter
2000-01-09 14:56:07 +00:00
peter
3dc75ce0ff 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.
2000-01-09 07:10:27 +00:00
peter
914c86f25f Further sync Alpha and i386 Makefiles. Remove KERNFORMAT = elf stuff as
it's always true on these platforms (and is likely to be on others as
well since loader is the one that is configured for whatever the boot
requirements are)
2000-01-08 17:31:35 +00:00
marcel
7aebc62b33 Sync with i386
\begin{quote}
Compile genassym.c with ordinary ${CFLAGS}.  The (small) needs for
${GEN_CFLAGS} and -U_KERNEL became negative when all all the
genassym.c's were converted to be cross-built.

Makefile.*:
- Cleanups associated with the old genassym.
- Fixed deprecated spelling of ${.IMPSRC} as "$<".
\end{quote}

Submitted by: bde
2000-01-08 16:43:46 +00:00
marcel
094d031ba0 Use genassym(1). 2000-01-07 14:58:47 +00:00
peter
b06ae99df1 Bring the Alpha and x86 Makefiles closer together. 2000-01-07 05:12:12 +00:00
peter
65fe2b0cb9 Missed s/KERNEL/_KERNEL/ here.. *blush*.
Submitted by:	bde
2000-01-06 13:14:51 +00:00
bde
444fb5c38d Synced with Makefile.i386. The following cleanups in Makefile.i386
rev.1.168 should have been committed concurrently:

Fixed some style bugs (always use precisely 1 space after `:' in
dependency specifications).
Removed bogus dependency of ${FULLKERNEL} on ${BEFORE_DEPEND}.

Reminded by:	peter
1999-12-27 12:06:11 +00:00
peter
28fa8aa8fa Zap the kvm_kernel.db juggling at 'make install' time, it isn't needed
any more.
1999-12-27 07:19:45 +00:00
peter
4d14b7fce6 Be more consistant in using perl vs. perl5. We were using perl5 in the
kernel builds so as not to confuse with perl4 when bootstrapping from old
systems.  I don't know if this is still applicable but it shouldn't hurt
to be consistant at least.

Also copy vnode_if.sh to vnode_if.pl.  Doing a 'sh vnode_if.sh' when it
was a perl script was kinda silly.
1999-12-17 22:07:43 +00:00
peter
11dc0d394d Argh, fix a stupid typo. :-( 1999-12-12 21:36:19 +00:00
peter
e6736871b8 Use a seperate -c and -h mode. The vnode_if.c file is compiled only into
the kernel while the vnode_if.h header is a bunch of inlines to call the
code that is in the kernel. Generating the .h file on the fly is kinda
bogus because it has to match the one compiled into the kernel.

IMHO we should have kern/vnode_if.c and sys/vnode_if.h committed in the
tree but that's another battle.
1999-12-12 16:43:05 +00:00
peter
01330ff49e Update the Alpha makefile to be more in line with the x86 version. It
was getting quite dated.  Attempt to minimize diffs between the two so
it's not as painful to do this next time.
1999-11-22 15:39:13 +00:00
n_hibma
3ce448a56f Typo 1999-11-16 22:02:16 +00:00
marcel
4a66bff37d Allow the source root `S' to be overridden by defining it only when
it isn't already defined. It enables config(8) to create the kernel
build directory where it wants.
1999-10-30 09:28:27 +00:00
peter
3b842d34e8 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
peter
060339e52c Delete the 'device-driver' suffix. It's been meaningless for a long time.
On the VAX, it used to be used for special compilation to avoid the
optimizer which would mess with memory mapped devices etc.  These days
we use 'volatile'.
1999-07-03 19:19:34 +00:00
mjacob
a8f734fb29 Replicate changes to i386 to do tags. I doesn't work yet 'coz ctags dumps
core, but when that is fixed it ought to.
1999-07-02 04:16:57 +00:00
peter
cafc37474e Revert back to not using -DKERNEL - it exposes inlines etc.
Zap symbols.raw and glue to make symbols.* - it's not used on the ELF-only
alpha kernel.  Symbol sorting is dead-end anyway once libkvm uses the
in-kernel linker symbol lookup.
1999-06-28 09:18:44 +00:00
peter
cee8d47a59 Make genassym compile - the recent buf locking changes meant that more
things from #ifdef KERNEL were needed.
1999-06-26 12:45:17 +00:00
peter
50db322904 Make corresponding changes to match config update 1999-05-10 03:02:22 +00:00
peter
3f78b53e89 I'm sick of the automatic rename of /kernel to /kernel.old while doing
development that leads to lots of crashes during boot.

I have made a 'reinstall' target (like in ports, and reinstall.debug)
This is most useful if you want to keep /kernel.old as a known bootable
kernel.  If you test a new kernel and have to reboot for a fix, a
'make reinstall' will install the new kernel over the top of the old
non-viable one, leaving the old one untouched.  This is mainly meant
for development, not general users.
1999-05-08 20:04:39 +00:00
peter
d893e230db Bump configvers; when the updates to generic/lint get committed, the old
config has severe indigestion.
1999-04-24 21:38:50 +00:00
dfr
d46d361744 Update VERSREQ. 1999-04-21 19:50:27 +00:00
peter
2c464cb55a Hopefully replicate the install.debug changes from the i386 version. 1999-04-13 18:35:28 +00:00
grog
a6f7cebb1b Back out default debug kernel. The flags revert to historical behaviour.
Requested-by:	ache
		bde
		dg

Modify targets for debug kernels:  when -g was specified, make will
now build a debug kernel called kernel.debug, and create a stripped
version called kernel at the same time.  The two targets install and
install.debug are otherwise unchanged.

Requested-by:	dillon

Update man page accordingly.
1999-04-11 03:40:11 +00:00
grog
23a589f45b 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.
1999-04-07 09:28:03 +00:00
des
e158dd910e Ignore errors from chflags. This makes it possible to make installworld
with DESTDIR set to an NFS-mounted file system.
1999-02-14 13:56:15 +00:00
dfr
5a3ed6148e Use the bsd.kern.mk from the source tree rather than the installed one
if possible.
1999-02-02 18:34:23 +00:00
jdp
ffcc901f03 Switch to using ".So" as the extension for PIC object files rather
than ".so".  The old extension conflicted with well-established
naming conventions for dynamically loadable modules.

The "clean" targets continue to remove ".so" files too, to deal with
old systems.
1999-01-09 21:51:00 +00:00
dfr
1f39998b9a Move some compile flags from the kernel makefile to bsd.kern.mk so that
kernel modules are built with the right flags.

Suggested by: Andrew Gallatin <gallatin@cs.duke.edu>
1998-12-17 22:36:21 +00:00
imp
2cfcfef3a1 If there is no .depends file, use the standard ad-hoc way of ensuring
that the generated files are generated before any of the object files.
Also minor cleanup of dependencies in conf/files that I bogusly added
before.

This should fix the requirement that make depend be done starting from
a clean config directory.  If you don't have a clean directory, make
depend is still required if you want the proper .o's to be recompiled.

Reviewed by: bde
1998-12-07 22:36:54 +00:00
dima
f6dc1e1822 Remove -U__NetBSD__ 1998-11-18 23:51:17 +00:00
dfr
c804c217bb * Change 'struct resource' to 'struct config_resource'.
* Bump config version.
1998-11-15 18:07:35 +00:00
dima
0ae4c4c0e7 Bump VERSREQ to make ``config'' happy.
Obtained from: Makefile.i386
1998-10-29 17:09:36 +00:00
dfr
64de388139 Change version number. 1998-09-18 18:41:49 +00:00
dfr
6dc7ad2249 Change to cam. 1998-09-16 08:22:09 +00:00
dfr
471d02c516 Device framework code now declared in MI code. 1998-09-07 07:29:30 +00:00
dfr
adbadeedc1 Lots of changes, including:
* Support for AlphaStation 200, 250, 255, 400
* Untested support for UDB, Multia, AXPpci33 (Noname)
* Support for Personal Workstation 433a/433au, 500a/500au, 600a/600au (Miata)
* Some minor fixes and improvements to interrupt handling.

Submitted by: Andrew Gallatin <gallatin@cs.duke.edu> (AS200, Miata)
Obtained from: NetBSD (some code for AS200, Miata, Noname)
1998-08-10 07:53:59 +00:00
dfr
b99598d6ac Change load address to 0xfffffc0000300000 to help support AS200. 1998-07-30 08:12:14 +00:00
dfr
d2bedeabab Tweaks to stop config(8) warnings and to avoid an unfinished experiment of
mine.

Submitted by: Andrew Gallatin <gallatin@cs.duke.edu>
1998-07-22 08:23:26 +00:00
dfr
988e0b33fd Tweaks for cross-building from NetBSD/alpha.
Submitted by: Andrew Gallatin <gallatin@cs.duke.edu>
1998-07-15 20:12:54 +00:00
dfr
f32529a069 Overhaul the spl system so that it actually works properly. 1998-07-12 16:32:10 +00:00