1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-15 10:17:20 +00:00
Mirror of the FreeBSD src repository https://git.FreeBSD.org/src.git .
Go to file
David E. O'Brien c815a20cb2 Change our ELF binary branding to something more acceptable to the Binutils
maintainers.

After we established our branding method of writing upto 8 characters of
the OS name into the ELF header in the padding; the Binutils maintainers
and/or SCO (as USL) decided that instead the ELF header should grow two new
fields -- EI_OSABI and EI_ABIVERSION.  Each of these are an 8-bit unsigned
integer.  SCO has assigned official values for the EI_OSABI field.  In
addition to this, the Binutils maintainers and NetBSD decided that a better
ELF branding method was to include ABI information in a ".note" ELF
section.

With this set of changes, we will now create ELF binaries branded using
both "official" methods.  Due to the complexity of adding a section to a
binary, binaries branded with ``brandelf'' will only brand using the
EI_OSABI method.  Also due to the complexity of pulling a section out of an
ELF file vs. poking around in the ELF header, our image activator only
looks at the EI_OSABI header field.

Note that a new kernel can still properly load old binaries except for
Linux static binaries branded in our old method.

  *
  * For a short period of time, ``ld'' will also brand ELF binaries
  * using our old method.  This is so people can still use kernel.old
  * with a new world.  This support will be removed before 5.0-RELEASE,
  * and may not last anywhere upto the actual release.  My expiration
  * time for this is about 6mo.
  *
2000-04-18 02:39:26 +00:00
bin Add a NO_TCSH knob. 2000-04-17 20:32:13 +00:00
contrib Change our ELF binary branding to something more acceptable to the Binutils 2000-04-18 02:39:26 +00:00
crypto Internat diff reducer. 2000-04-16 17:49:31 +00:00
etc Document NO_TCSH knob. 2000-04-17 20:45:20 +00:00
games Add a new fortune and remove an email address. 2000-04-05 18:44:02 +00:00
gnu Perl lib configuration for IA-64 (along with PPC and arm32) 2000-04-17 19:44:57 +00:00
include Create <event.h> -> <sys/event.h> link that I forgot earlier. 2000-04-16 22:31:49 +00:00
kerberos5 Properly separate the K5-only buld from K4. 2000-03-23 14:56:47 +00:00
kerberosIV Remove the last vestiges of libRSAglue now that it's an empty stub. 2000-03-11 22:34:10 +00:00
lib Change our ELF binary branding to something more acceptable to the Binutils 2000-04-18 02:39:26 +00:00
libexec Cross-reference ldd(1) in rtld(1) and vice versa. 2000-03-28 09:01:04 +00:00
release Create mfsfd/etc/defaults/ first before copying etc/defaults/pccard.conf. 2000-04-17 05:13:27 +00:00
sbin Remove MAINTAINER. 2000-04-16 00:17:46 +00:00
secure Update for OpenSSL 0.9.5a and clean up a bit. 2000-04-13 07:37:35 +00:00
share Document NO_TCSH knob. 2000-04-17 20:45:20 +00:00
sys Change our ELF binary branding to something more acceptable to the Binutils 2000-04-18 02:39:26 +00:00
tools Correct grammar in the synoptic comment. 2000-03-03 09:25:00 +00:00
usr.bin Change our ELF binary branding to something more acceptable to the Binutils 2000-04-18 02:39:26 +00:00
usr.sbin Enable 8bit chars excepting high controls 2000-04-18 01:12:27 +00:00
COPYRIGHT Update to add the July 22, 1999 addendum. 1999-09-05 21:33:47 +00:00
Makefile We have a new world order in libraries. 2000-02-24 23:03:16 +00:00
Makefile.inc1 Unbreak make world (libpam depends on libopie) 2000-04-17 03:50:53 +00:00
Makefile.upgrade $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
README $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
UPDATING Add information about the dangarous apollo MPV3 chipset. Several 2000-04-04 17:14:18 +00:00

This is the top level of the FreeBSD source directory.  This file
was last revised on:
$FreeBSD$

For copyright information, please see the file COPYRIGHT in this
directory (additional copyright information also exists for some
sources in this tree - please see the specific source directories for
more information).

The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel and the contents of /etc.  Please see the top of the Makefile
in this directory for more information on the standard build targets
and compile-time flags.

Building a kernel with config(8) is a somewhat more involved process,
documentation for which can be found at:
   http://www.freebsd.org/handbook/kernelconfig.html
And in the config(8) man page.

The sample kernel configuration files reside in the sys/i386/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file LINT contains entries for all possible devices, not
just those commonly used, and is meant more as a general reference
than an actual kernel configuration file (a kernel built from it
wouldn't even run).


Source Roadmap:
---------------
bin		System/User commands.

contrib		Packages contributed by 3rd parties.

crypto		Export controlled stuff (see crypto/README).

etc		Template files for /etc

games		Amusements.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberosIV	Kerberos package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

sbin		System commands.

secure		DES and DES-related utilities - NOT FOR EXPORT!

share		Shared resources.

sys		Kernel sources.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.


For information on synchronizing your source tree with one or more of
the FreeBSD Project's development branches, please see:

  http://www.freebsd.org/handbook/synching.html