Under the latest Gentoo (2.6.34-gentoo-r2) the interlibrary
dependencies must be made explicit. This is likely due to
the --as-needed linker option which is commonly used under
Gentoo. This option requires that the linker only include
the minimum set of symbols required by the binary. Without
the full dependency tree the linker would need to bring in
all the symbols from dependent libraries.
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
The stack check implementation in older versions of gcc has
a fairly low default limit on STACK_CHECK_MAX_FRAME_SIZE of
roughly 4096. This results in numerous warning when it is
used with code which was designed to run in user space and
thus may be relatively stack heavy. The avoid these warnings,
which are fatal with -Werror, this patch targets the use of
-fstack-check to libraries which are compiled in both user
space and kernel space. The only utility which uses this
flag is ztest which is designed to simulate running in the
kernel and must meet the -fstack-check requirements. All
other user space utilities do not use -fstack-check.
warning: frame size too large for reliable stack checking
warning: try reducing the number of local variables