do not hardcode the location of bash, use env instead

The install path of bash can depend on the host. e.g. FreeBSD
installs bash in /usr/local/bin since it is not part of the
base system. Hence use env to properly invoke bash.
configure: sed: replace multiline replacements

This is still not POSIX conformant, but will work
with both BSD and GNU like sed, since they both use
(as a extension) a semicolon as the end of a line.
runtests.sh: place flags before arguments

FreeBSD its getopt parses flags till the first argument.
Therefore place the flags before the arguments so running tests
on FreeBSD also works.
make sure test are run as a unprivaliged user

Since the whole idea to falsely report additional privalages
make sure the user invoking the test doesn't alread have them.
add void for no arguments
remove a backslash from \ls

bash seems to happily accepts backslashes, e.g. \l\s
works fine. Likely because it are unrecognized escape
sequences. Anyway, remove the backslash as it is likely
a typo.
use cc for the host compiler

FreeBSD e.g. no longer installs gcc by default but uses
clang as host compiler. Hence use cc which should always
work.
make extended attributes optional
limit stat64 to glibc
freebsd doesn't link against ld
freebsd subport
freebsd files
ports/uids_generic/wrapfuncs.in
ports/unix/wrapfuncs.in
FreeBSD: add fstatat
hack: fix base_fstatat for FreeBSD