fts: avoid unnecessary strlen calls

* lib/fts.c (_D_EXACT_NAMLEN): Remove macro.
(fts_build): Store the length of the dp->d_name entry in a local variable
instead of calling strlen() several times via the above, removed macro.
For 'rm -rf some-dir' with e.g. 1M directory entries, this speeds up the
run by ~4%, and reduces the execution time by about a third if run
via "ltrace -c rm -rf some-dir".
fts: avoid unnecessary strlen calls

* lib/fts.c (fts_build): Go back to using _D_EXECT_NAMLEN
when that can be faster than strlen.
fts: avoid unnecessary strlen calls

Not all platforms have _D_EXACT_NAMLEN.

* lib/fts.c (_D_EXACT_NAMLEN): Restore definition when needed.

Signed-off-by: Eric Blake <eblake@redhat.com>