freebsd-dev/sys/conf
Peter Wemm f41325db5f With this commit, I hereby pronounce gensetdefs past its use-by date.
Replace the a.out emulation of 'struct linker_set' with something
a little more flexible.  <sys/linker_set.h> now provides macros for
accessing elements and completely hides the implementation.

The linker_set.h macros have been on the back burner in various
forms since 1998 and has ideas and code from Mike Smith (SET_FOREACH()),
John Polstra (ELF clue) and myself (cleaned up API and the conversion
of the rest of the kernel to use it).

The macros declare a strongly typed set.  They return elements with the
type that you declare the set with, rather than a generic void *.

For ELF, we use the magic ld symbols (__start_<setname> and
__stop_<setname>).  Thanks to Richard Henderson <rth@redhat.com> for the
trick about how to force ld to provide them for kld's.

For a.out, we use the old linker_set struct.

NOTE: the item lists are no longer null terminated.  This is why
the code impact is high in certain areas.

The runtime linker has a new method to find the linker set
boundaries depending on which backend format is in use.

linker sets are still module/kld unfriendly and should never be used
for anything that may be modular one day.

Reviewed by:	eivind
2001-06-13 10:58:39 +00:00
..
defines
files Sync with recent KAME. 2001-06-11 12:39:29 +00:00
files.alpha Hints overhaul: 2001-06-12 09:40:04 +00:00
files.i386 Hints overhaul: 2001-06-12 09:40:04 +00:00
files.ia64 Hints overhaul: 2001-06-12 09:40:04 +00:00
files.pc98 Hints overhaul: 2001-06-12 09:40:04 +00:00
kern.mk Add section for building ia64 kernels. 2000-10-16 20:04:52 +00:00
kmod.mk With this commit, I hereby pronounce gensetdefs past its use-by date. 2001-06-13 10:58:39 +00:00
ldscript.alpha Add $FreeBSD$ 2000-01-11 15:35:16 +00:00
ldscript.amd64 Add $FreeBSD$ 2000-01-11 15:35:16 +00:00
ldscript.i386 Add $FreeBSD$ 2000-01-11 15:35:16 +00:00
ldscript.ia64 Change the kernel layout to match Linux/ia64 more closely. This prevents 2001-03-09 13:47:25 +00:00
ldscript.powerpc Add $FreeBSD$ 2000-01-11 15:35:16 +00:00
majors Remove MFS from configs idea of the world. 2001-05-29 18:49:46 +00:00
Makefile.alpha With this commit, I hereby pronounce gensetdefs past its use-by date. 2001-06-13 10:58:39 +00:00
Makefile.i386 With this commit, I hereby pronounce gensetdefs past its use-by date. 2001-06-13 10:58:39 +00:00
Makefile.ia64 With this commit, I hereby pronounce gensetdefs past its use-by date. 2001-06-13 10:58:39 +00:00
Makefile.pc98 With this commit, I hereby pronounce gensetdefs past its use-by date. 2001-06-13 10:58:39 +00:00
Makefile.powerpc With this commit, I hereby pronounce gensetdefs past its use-by date. 2001-06-13 10:58:39 +00:00
newvers.sh setlocale(3) has been fixed to match POSIX standard: 2001-03-02 16:52:14 +00:00
NOTES Hints overhaul: 2001-06-12 09:40:04 +00:00
options Add a PSEUDOFS option to allow pseudofs to be built statically. 2001-06-11 10:58:07 +00:00
options.alpha Turn on preemption by default on the alpha arch. This also removes the 2001-05-01 00:19:24 +00:00
options.i386 Hints overhaul: 2001-06-12 09:40:04 +00:00
options.ia64 Allow the size of the SSC memory disk used with the SKI emulator to be 2001-04-30 21:26:43 +00:00
options.pc98 Hints overhaul: 2001-06-12 09:40:04 +00:00
param.c Remove unneeded <stddef.h> #includes. 2000-10-29 16:57:42 +00:00
systags.sh $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00