intprops: port to Oracle Studio c99

* lib/intprops.h (_GL_HAVE___TYPEOF__) [__SUNPRO_C && __STDC__]:
Define to 0, to avoid diagnostics when Oracle Studio is pedantic.
hash: relax license to LGPLv2+, for libguestfs

* modules/hash (License): Change from GPL to LGPLv2+.
fpending: fix regression on DragonFly BSD

Commit 3f5bf99e claimed that it is safe to declare __fpending twice,
but in reality this caused a regression on Dragonfly BSD.  Reported by
GW in <https://lists.gnu.org/archive/html/bug-m4/2013-11/msg00000.html>,
<https://lists.gnu.org/archive/html/bug-gnulib/2013-11/msg00022.html>.

* m4/fpending.m4 (gl_FUNC_FPENDING): Check for declaration.
* lib/fpending.h (__fpending): Don't declare twice.

Signed-off-by: Eric Blake <eblake@redhat.com>
fpending: fix typo

Use correct witness macro name (reported by Paul Eggert).

* lib/fpending.h (__fpending): s/DECL_FPENDING/DECL___FPENDING/.

Signed-off-by: Eric Blake <eblake@redhat.com>
extern-inline: port better to OS X 10.9

* m4/extern-inline.m4: Omit serial number; this file doesn't use them.
(gl_EXTERN_INLINE): Do not suppress the use of extern inline on
OS X 10.9, except for g++ where the bug is still present.
See <http://trac.macports.org/ticket/41033>.
base64: provide a fast path for encoding well sized buffers

Avoid conditionals in the base64 encoding loop,
which was seen to give a 60% throughput improvement
with the base64 utility from coreutils:

$ truncate -s100MiB file.in
$ time base64-old -w0 < file.in >/dev/null
real  0m0.302s
$ time base64-new -w0 < file.in >/dev/null
real  0m0.182s

* lib/base64.c (base64_encode_fast): A new function to be called
when we don't want to NUL terminate, and we have enough space
in the output to encode the given input.
(base64_encode): Call the _fast() version when appropriate.
Also remove a redundant mask with 0x3F on the first encoded byte.
* lib/getgroups.c (posix_getgroups, getgroups) [__APPLE__]:

New function and macro, to work around _DARWIN_C_SOURCE problem.
Reported by Jack Howarth in <http://bugs.gnu.org/14463>.
Fix indentation in previous patch.