ARM: accept more architecture strings in makefile

E.g. Fedora buildsystem uses armv7hl which is not matched by current string:
https://bugzilla.redhat.com/show_bug.cgi?id=800601
implemented fstatat() syscall + testsuite

fstatat(2) seems to be implemented either by

* __NR_fstatat (only MIPS?)
* __NR_fstatat64 (32 bit archs)
* __NF_newfstatat (64 bit archs)

Changeset adds this syscall and a test case which checks some other
*at() functions too
tests/runtests-X: initial checkin

this provides another runtests.sh implementation which is designed for
non-interactive tests.
asctime_r: Add trailing '\0'

The asctime() function shall convert the broken-down time in the
structure pointed to by timeptr into a string in the form:

Sun Sep 16 01:03:52 1973\n\0

See: http://pubs.opengroup.org/onlinepubs/009695399/functions/asctime.html
asctime: added testsuite program
s390: added arch specific fadvise64_64 implementation

Patch adds a s390 (32-bit) specific implementation of posix_advise(),
because the syscall uses a struct for passing the parameters

Patch was provided by Dan Horak.
dietunaligned: initial checkin

header provides some helper macros which can be used to access
unaligned data.  It uses some compiler magic to make access as efficient
as possible.
ARM: implemented TLS startup code

doing it in the stackgap initialization is hacky but done in upstream
code so we do it for ARM too.

Signed-off-by: Enrico Scholz <enrico.scholz@ensc.de>
makefile: install dyn_start + dyn_stop

these files are mandatory with WANT_DYNAMIC which is the default now
stackgap: moved 'myrand[]' to outer scope

The address of 'myrand[]' will be used later in the outer scope so
that this buffer should by allocated there too.

Signed-off-by: Enrico Scholz <enrico.scholz@ensc.de>
diet: use correct arch for 'powerpc' crosscompilers

when gcc is invoked as powerpc-...-gcc, libraries will be searched in bin-powerpc although buildsystem installed them into bin-ppc.  Translate arch in the diet wrapper.

Signed-off-by: Enrico Scholz <ensc@ensc.de>
stackgap: refactored register based TLS pointer code

gcc optimizes away the old code because '__thread_self' will not be
accessed.  A classical '__asm__ __volatile__()' optimization barrier is
the best solution imo.  Patch adds an __ABI_TLS_REGISTER macro in the
tls.h header to avoid code duplication.

Patch fixes powerpc64 (--> r13) and powerpc (--> r2) cases too.

Signed-off-by: Enrico Scholz <ensc@ensc.de>
stackgap: turn #warning into #error

Not setting the TLS pointer is critical and causes later program
crashes. Catch this at compile time by aborting the build.

Signed-off-by: Enrico Scholz <ensc@ensc.de>
ignore failures in sigsetjmp test for new
tests/sigsetjmp: moved common tests out of specific branches

Signed-off-by: Enrico Scholz <ensc@ensc.de>