Kris Kennaway 62d90fb793 Overhaul the MACHINE_CPU behaviour:
* Rip out MACHINE_CPU stuff from sys.mk and include a new <bsd.cpu.mk>
  after we pull in /etc/make.conf.  We need to do it afterwards so we can
  react to the user setting of the:

* CPUTYPE variable, which contains the CPU type which the user wants to
  optimize for.  For example, if you want your binaries to only run on an
  i686-class machine (or higher), set this to i686.  If you want to support
  running binaries on a variety of CPU generations, set this to the lowest
  common denominator.  Supported values are listed in make.conf.

* bsd.cpu.mk does the expansion of CPUTYPE into MACHINE_CPU using the
  (hopefully) correct unordered list of CPU types which should be used on
  that CPU.  For example, an AMD k6 CPU wants any of the following:
    k6 k5 i586 i486 i386
  This is still an unordered list so the client makefile logic is simple -
  client makefiles need to test for the various elements of the set in
  decreasing order of priority using ${MACHINE_CPU:M<foo>}, as before.
  The various MACHINE_CPU lists are believed to be correct, but should be
  checked.

* If NO_CPU_CFLAGS is not defined, add relevant gcc compiler optimization
  settings by default (e.g. -karch=k6 for CPUTYPE=k6, etc).  Release
  builders and developers of third-party software need to make sure not to
  enable CPU-specific optimization when generating code intended to be
  portable.  We probably need to move to an /etc/world.conf to allow the
  optimization stuff to be applied separately to world/kernel and external
  compilations, but it's not any worse a problem than it was before.

* Add coverage for the ia64/itanium MACHINE_ARCH/CPUTYPE.

* Add CPUTYPE support for all of the CPU types supported by FreeBSD and gcc
  (only i386, alpha and ia64 first, since those are the minimally-working
  ports.  Other architecture porters, please feel free to add the relevant
  gunk for your platform).

Reviewed by:    jhb, obrien
2001-02-22 11:14:25 +00:00
..
2001-02-22 11:14:25 +00:00

$FreeBSD$

The /usr/share/examples/etc directory contains the original
distribution versions of the files which are shipped in /etc.  This is
intended to make it easy to recover when the /etc versions are
accidentally deleted or broken beyond repair.

This directory contains the following files:

aliases		- sendmail aliases file (see aliases(5))
amd.map		- filesystem automounter lookup resolution map (see amd(8))
auth.conf	- authentication capability database (see auth.conf(5))
crontab		- system scheduled command table (see crontab(5))
csh.cshrc	- sample .cshrc (see csh(1))
csh.login	- sample .login
csh.logout	- sample .logout
disktab		- disk description file (see disktab(5))
dm.conf		- configuration file for games (see dm(6))
fbtab		- configuration file for login(1)
ftpusers	- user restriction file for ftpd(8)
gettytab	- defines port configuration for getty(8)
group		- group permissions file (see group(5))
hosts		- see hosts(5)
hosts.equiv	- defines system-wide trusted hosts (see ruserok(3))
hosts.lpd	- defines trusted hosts for lpd(8)
inetd.conf	- configuration file for inetd(8)
locate.rc	- confiuration file for locate(1)
login.access	- configuration file for login(8) (see login.access(5))
login.conf	- login class capabilities database (see login.conf(5))
mail.rc		- systemwide initialization files for mail(1)
make.conf	- defines configuration variables for system builds
manpath.config	- configuration file for man(1)
modems		- modem configuration database (see modems(5))
motd		- sample Message of the Day
netstart	- network startup script run from /etc/rc
networks	- see networks(5)
newsyslog.conf	- configuration for system log file rotator newsyslog(8)
nsswitch.conf   - name-service switch config file (see nsswitch.conf(5))
pam.conf	- configuration file for pam(8)
pccard_ether	- confiuration script for ethernet pccards (see pccardd(8))
phones		- phone number database for tip(1)
printcap	- configuration file for lpr(1)
protocols	- see protocols(5)
profile		- system-wide .profile for sh(1)
rc		- system startup script (see init(8))
rc.atm		- networking startup script for atm(8)
rc.devfs	- startup script for devfs(5)
rc.diskless1	- general BOOTP startup script
rc.diskless2	- 
rc.firewall	- setup system for ipfw(8)
rc.i386		- startup script for i386-specific processing
rc.alpha	- startup script for axp-specific processing
rc.isdn		- startup script for isdnd(8)
rc.network	- network startup script
rc.pccard	- startup script for PC-cards
rc.serial	- sample local startup script fragments
rc.shutdown	- system shutdown script (see init(8))
remote		- configuration file for tip(1)
rpc		- see rpc(5)
security	- script run from crontab to do nightly security checks
services	- see services(5)
shells		- list of configurable shells (see shells(5))
skey.access	- configuration file for S/Key (see skey.access(5))
syslog.conf	- configuration file for syslogd(8)
ttys		- defines port configuration for init(8)
defaults/rc.conf	- default system configuration info (see rc.conf(5))
defaults/pccard.conf	- default configuration file for pccardd(8)