Cross-compiling mdadm fails in the case binutils was only build in stage 0.
The ansidecl.h is is only installed if the --enable-shared configure option
is given when building binutils which is not the case at toolchain stage
(aka stage 0). But even if we provide the --enable-shared configure option
at toolchain stage, the headers are installed at place which is not known
when building packages at stage 1.
Note:
By default the 'headers_install' make target installs hidden files within
the destination directories called '..install.cmd' and '.install' and the
'headers_check' make target is doing it similar, by installing files like
'..check.cmd' and '.check'.
Those files seem to be only interesting for kernel developers and are not
needed within the package, thus we are going to remove the files.
Note:
If nscd is installed but not in use, then running `nscd -i` will exit(1).
We shouldn't warn in this case since this is not abnormal behavior.
Example: useradd
---------------------------------------------------------------------------
useradd: nscd exited with status 1useradd: Failed to flush the nscd cache.
---------------------------------------------------------------------------
Note:
By default the Makefile defines 'CC=gcc -std=gnu99' and because we
automatically pass 'CC=gcc' as make argument which overwrites the
the needed '-std=gnu99' we need to workaround the problem manually