build: ASN.1 and GCC build fixes

Address trivial build issues on certain Linux distribuitions (e.g.
Fedora 20 on which this patch was tested).

Most standard C++ libraries had unistd.h removed in GCC 4.7, so add it
back in explicitly.

Resolve the following ASN.1 build error by specifying the C language
tag.

libtool: compile: unable to infer tagged configuration
libtool: compile: specify a tag with `--tag'

Signed-off-by: Tom Tsou <tom@tsou.cc>
CommonLibs: Add thread cancellation capability

For clean shutdown in the transceiver we need to cancel and join
running threads for orderly unwinding. Thread cancellation points
already exist, so we just need to be able to call on the threads to
exit out when stopping or shutting down.

Don't error when joining a NULL thread, which would be the case if a
thread was stopped before ever being started to begin with.

Signed-off-by: Tom Tsou <tom@tsou.cc>
TransceiverUHD: Add transceiver support for UHD devices

Supported devices includes USRP N200/N210/USRP2, B200/B210, X300/X310.
Other Ettus devices are not supported due to bandwidth limitations.
There is no direct embedded device support at this time.

The UHD transceiver device operating rate is fixed at 6.25 Msps, which
interfaces with the UMTS chip rate of 3.84 Mcps through a combined
polyphase resampling and RRC pulse-shaping filterbank. The effective
oversampling factor is approximate 1.63 samples per symbol.

Tested against Agilent 89600 VSA for appropriate EVM and ACP values.

Signed-off-by: Tom Tsou <tom@tsou.cc>
TransceiverUHD: Configure UHD build when driver is detected

Setup configure to build and install the UHD transceiver if the UHD
driver is found. Otherwise, build the RAD1 transceiver. For UHD
transceiver, perform CPU checking for Intel SSE capability. Update
CPU check macros from GNU Autoconf Archive version 2014.10.15.

Signed-off-by: Tom Tsou <tom@tsou.cc>