For gnu/lib/csu, only use gcc-specific flags when compiling with gcc.

MFC after:	3 days
Apply upstream commit 33312fd828e59c78ae4ee30fd70d0ca109748cf0 (by
zoulasc) to contrib/file:

  don't write a char to a pointer.

MFC after:	3 days
Update names from newcons to vt(9).

Sponsored by:	The FreeBSD Foundation
Add Freescale i.MX515 vt(9) driver.

Sponsored by:	The FreeBSD Foundation
Bootstrap etcupdate(8) as part of the release build, similar
to what is done for mergemaster(8).  This allows etcupdate(8)
to work out-of-box after the first upgrade of a system.

Submitted by:	jhb
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
To avoid having to explicitly test COMPILER_TYPE for setting
clang-specific or gcc-specific flags, introduce the following new
variables for use in Makefiles:

CFLAGS.clang
CFLAGS.gcc
CXXFLAGS.clang
CXXFLAGS.gcc

In bsd.sys.mk, these get appended to the regular CFLAGS or CXXFLAGS for
the right compiler.

MFC after:	1 week
Improve section on carp(4) updates.
Add some revision numbers.
Add a note for Microsoft Hyper-V.
Group virtualization items in one section.
Fix incorrect header guard define in sys/netpfil/pf/pf.h, which snuck in
in r257186.  Found by clang 3.4.
Add a parameter to 'vcpu_set_state()' to enforce that the vcpu is in the IDLE
state before the requested state transition. This guarantees that there is
exactly one ioctl() operating on a vcpu at any point in time and prevents
unintended state transitions.

More details available here:
http://lists.freebsd.org/pipermail/freebsd-virtualization/2013-December/001825.html

Reviewed by:	grehan
Reported by:	Markiyan Kushnir (markiyan.kushnir at gmail.com)
MFC after:	3 days
Shorten the DMTIMER_ prefix used for register names to DMT_.  This is in
preparation for adding more complete register defintions, some of which
have fairly long names.
In usr.bin/sort/radixsort.c, pop_ls_mt() is only referenced if
SORT_THREADS is defined, so make the whole function conditional, instead
of just the pthread calls in it.

MFC after:	3 days
Map out all the timer-related registers, and define named constants for
the bits within the registers.
A variety of cleanups...
 - Use named constants for register bits, instead of mystery numebrs
   scattered around in the code.
 - Use inline functions for bus space read/write, instead of macros
   that rely on global variables.
 - Move the timecounter struct into the softc instead of treating it
   as a global variable.  Backlink from it to the softc.
 - This leaves a pointer to the softc as the only static/global variable
   and it's now used only by DELAY().
Add updates for Raspberry PI support, unmapped VMIO, netmap(4), nvme(4).
Add PPS support to the am335x timer driver.  This uses the timer hardware's
capture mode together with the timecounter's PPS polling feature to get
very accurate PPS capture without any interrupt processing (or latency).

Hardware timers 4 through 7 have associated capture-trigger input pins.
When the PPS support is compiled in the code automatically chooses the
first timer it finds that has the capture-trigger pin set to input mode
(this is configured via the fdt data).
Get rid of register keyword usage in gperf, it is totally obsolete for
C++, and this allows gperf to be compiled for C++11 without a warning
about it.

MFC after:	3 days
Fix linewrapping behaviour for CJK fullwidth characters.

Instead of only wrapping when in the 'wrapped state', also force
wrapping when the character to be rendered does not fit on the line
anymore.

Tested by:	lwhsu
Fix text for loading Hyper-V drivers via loader.conf.

Noticed by: hrs