GNU libc is a pain. If you don't define _GNU_SOURCE, it doesn't declare
asprintf(). If you *do* define _GNU_SOURCE, the strerror_r() it
declares isn't POSIX-compliant.
We use asprintf() if present, so we need it to be declared; define
_GNU_SOURCE in ftmacros.h.
At configuration time, if we have strerror_r(), check whether it's
GNU-style or POSIX-style, and define different #defines for those two
cases. Handle GNU-style strerror_r() and POSIX-style strerror_r()
differently in pcap_fmt_errmsg_for_errno().
Make sure everything that uses asprintf() includes ftmacros.h before
including stdio.h.