/bin/mv: Sync with FreeBSD
1. Utilize central <paths.h> header
2. Meet posix spec for moving directory to existing non-empty directory
3. Meet posix spec for not moving directory over a file
4. Don't chop IO into pieces, use MAXPHYS
5. Add -h flag (similar to ln -h flag)
6. Test for input_is_terminal
7. Regression test added.
DETAILS
==========================================================================
1. remove pathnames.h file and add _PATH_RM to paths.h
2. Moving a directory to an existing non-empty directory will now fail as
required.
3. Prior to change this test past, but after change it failed on
cross-link devices. Original code added to check for case and return
-1 for the cross-link case.
4. Read files in one block and improve warn messages.
5. Using -h flag will force mv to treat a symbolic link to a directory
for the target as a symbolic link instead of a directory. This makes
it possible to atomically update a symbolic link using rename().
6. POSIX requires this behavior:
if (exists and (NOT f_options) AND
((not_writable AND input_is_terminal) OR i_option)) then
prompt
This behavior was implemented.
7. Passes all tests in suite. Prior to change it failed 2 of 32 tests.