.gitignore: fixup for [006dd97e]
move `_NULL` handle definitions earlier in mpi.h

In particular, the clang type checking helpers can cause
`MPI_DATATYPE_NULL` to be used before it has been `#define`d.

No reviewer.
fix compile error when `long double` is disabled

Otherwise `oputil.h` barfs on a bad preprocessor comparison when
`MPID_NO_LONG_DOUBLE` is set.

Fix reported by and suggested by Steve Oyanagi from Cray.

No reviewer.
configure: add `--disable-long-double`

This helps Cray out (and conceivably other vendors), since they ship
several compilers which have different interpretations of what `long
double` should mean (80-bit vs. 128-bit, being most common).

Note that exporting `MPID_NO_LONG_DOUBLE=yes` in the environment before
running `configure` does work, but may not work as intended in the face
of an automake-initiated reconfigure.  Autoconf does not treat this
variable as precious (and we don't ask it to, since it's for
inside-configure-use only), so its value will not be preserved for the
reconfigure.  The same holds for any `MPID_` variables mentioned at the
top of `configure.ac`.

No reviewer.
`long double _Complex` depends on `long double`

It was possible to have a working `long double _Complex` even if the MPI
library was pretending that `long double` should not work.

Ditto for the C++ version.

No reviewer.
clang annotations: fix `long double _Complex'

Obvious bug.

No reviewer.
mpi.h: guard `long double`-derived MPI types

Probably not too harmful to omit the guards, but better not to jumble
more constants together in the compiler's type-checking machinery.

No reviewer.
Merge branch 'fix-long-double'

Numerous fixes related to `long double` support, including selectively
enabling/disabling it.
tests: gate `long double _Complex`

We should not support `long double _Complex` if we don't support `long
double`.

No reviewer.
fix `long double _Complex` logic from [a9305613]

No reviewer.
fix `complex<long double>` bug from [3f1fcead]

If C++ is disabled or the C++ compiler does not support
`complex<long double>`, then bad Fortran code would be emitted into
`mpif.h`.

No reviewer.
`--enable-g=all` now means _all_, add `=most`

Before this commit `--enable-g` meant `--enable-g=all`, which actually
turned on all debugging options *except* `memarena` and `handle`.

As of this commit:
 * `most` is a new valid debug option having the old effect of
   `all,handle`
 * `all` really means everything now, including `memarena` and `handle`
 * `--enable-g` with no `=BLAH` means `most`

Reviewed by balaji@.