configure.in:  disable USE_SHMDRV by default

USE_SHMDRV is optional for userland threads.  When enabled, it
compiles modules for all discovered kernels and sets USE_SHMDRV=yes in
rtapi.conf.  This could cause problems for users if they run a kernel
with no shmdrv module and the realtime script insists on loading
shmdrv by default.
xeno_math/libm.c:  remove #include config.h and macros from that source
rtapi/Submakefile:  remove fixed FIXME re: RTAI -llxrt in LDFLAGS
Makefile:  Remove unneeded addition to KBUILD_EXTRA_SYMBOLS
Makefile no-op:  clarify comments re. KERNELRELEASE
Build shmdrv.ko for all detected kernels if USE_SHMDRV=yes

Build shmdrv.ko for each detected kernel source in SHMDRV_KERNEL_DIRS
and copy the module into ../rtlib/shmdrv/<kver>

shmdrv is really RTAPI-independent and doesn't fit into the usual
kthread flavor module building.  The sources must still be separately
copied into objects/shmdrv/<kver> along with a one-liner Makefile, and
kbuild run against the kernel source.

This is done from the top-level make run when BUILD_ALL_FLAVORS=yes.

We have no way of mapping kver to kdir, only kdir to kver, so I
couldn't think of an elegant way to write the build rules except to
create a timestamp and do the whole build in one big ugly recipe.
Update 'make install' for UB

- user threads modules go into /usr/lib/linuxcnc/<flavor>
- kernel threads ulapi.so goes into /usr/lib/linuxcnc/<flavor>/<kver>
- kernel threads kmods go into /lib/modules/<kver>/linuxcnc
  - same for shmdrv.ko built for non-kthreads kernels

FIXME:  scripts still need to be updated for non-RIP