Virgin import of Flex v2.5.4
import vanilla flex version 2.5.35

Reviewed by:	cognet
Approved by:	cognet
Import flex 2.5.37.
Merge some important post-2.5.37 changes from upstream.

http://flex.git.sourceforge.net/git/gitweb.cgi?p=flex/flex;a=commit;h=c53fd2db8c78fef5afd284c3e64da51bc71cf6c3
http://flex.git.sourceforge.net/git/gitweb.cgi?p=flex/flex;a=commit;h=899b2163bbde1a70b3be8b91cbbabd8007341205
http://flex.git.sourceforge.net/git/gitweb.cgi?p=flex/flex;a=commit;h=7642bd98aebb62260df923f57b794138dab6f1e7
http://flex.git.sourceforge.net/git/gitweb.cgi?p=flex/flex;a=commit;h=11b7c6cea340c2fca9b49ec635a45bd34361afe9
http://flex.git.sourceforge.net/git/gitweb.cgi?p=flex/flex;a=commit;h=ec2fdb85e0bac6e8aeca405094506e4cf8bfc0b6
Clean up svn:keywords property.
Partially revert r250128.

http://flex.git.sourceforge.net/git/gitweb.cgi?p=flex/flex;a=commit;h=ec2fdb8

This patch is known to generate a broken scanner.

http://sourceforge.net/mailarchive/message.php?msg_id=29909582
Don't look for headers outside of the source or object directories. In
particular, don't use DESTDIR. Such creates an unnecessary dependency
on the build machine.

Obtained from:	Juniper Networks, Inc.
Don't look for headers outside of the source or object directories. In
particular, don't use DESTDIR. Such creates an unnecessary dependency
on the build machine.

Obtained from:  Juniper Networks, Inc.
Add a makefle that recurses into the right architecture-specific
sub-directory. This to allow simpler logic outside of the csu
directory.

Obtained from:	Juniper Networks, Inc.
Fix the PowerPC Book-E register definitions used by the remote GDB
protocol.

Obtained from:	Juniper Networks, Inc.
Enable the use of TDMA on an 802.11n channel (with aggregation disabled,
of course.)

There's a few things that needed to happen:

* In case someone decides to set the beacon transmission rate to be
  at an MCS rate, use the MCS-aware version of the duration calculation
  to figure out how long the received beacon frame was.

* If TxOP enforcing is available on the hardware and we're doing TDMA,
  enable it after a reset and set the TDMA guard interval to zero.
  This seems to behave fine.

TODO:

* Although I haven't yet seen packet loss, the PHY errors that would be
  triggered (specifically Transmit-Override-Receive) aren't enabled
  by the 11n HAL.  I'll have to do some work to enable these PHY errors
  for debugging.

What broke:

* My recent changes to the TX queue handling has resulted in the driver
  not keeping the hardware queue properly filled when doing non-aggregate
  traffic.  I have a patch to commit soon which fixes this situation
  (albeit by reminding me about how my ath driver locking isn't working
  out, sigh.)

  So if you want to test this without updating to the next set of patches
  that I commit, just bump the sysctl dev.ath.X.hwq_limit from 2 to 32.

Tested:

* AR5416 <-> AR5416, with ampdu disabled, HT40, 5GHz, MCS12+Short-GI.
  I saw 30mbit/sec in both directions using a bidirectional UDP test.
Implement a separate hardware queue threshold for aggregate and non-aggr
traffic.

When transmitting non-aggregate traffic, we need to keep the hardware
busy whilst transmitting or small bursts in txdone/tx latency will
kill us.

This restores non-aggregate iperf performance, especially when doing
TDMA.

Tested:

* AR5416<->AR5416, TDMA
* AR5416 STA <-> AR9280 AP
Mention the switch to bmake by default.

Reviewed by:	obrien
Remove an extra semicolon from the DOT language output.

PR:		kern/178540
Submitted by:	Trond Endrestol
MFC after:	1 week
Disable keyword expansion.
Add flex 2.5.37 from flex.sourceforge.net to contrib.
Apply still relevant local changes.

r124183:	Work around a `label defined but not used' warning.
r179549:	De-register declarations.
r179657:	De-register declarations in non-dot-c files.
r181269:	Mark yy_fatal_error() as __dead2.
r228992:	Spelling fixes.
r240518:	Correct double "the the".
Reduce compiler warnings.
Do not use log10(3) to get rid of libm dependency.  It is really not useful.
Define yy_current_buffer for backward compatibility.