The specification for "cp" is as specified in the SUS but with the following differences as listed below.
same as -dpR
make a backup of each existing destination file
like --backup but does not accept an argument
never follow symbolic links
follow command-line symbolic links
link files instead of copying
always follow symbolic links
append source path to DIRECTORY
remove each existing destination file before attempting to open it (contrast with --force)
control creation of spares files.
By default, sparse SOURCE files are detected by a crude heuristic and the corresponding DEST file is made sparse as well. That is the behavior selected by --sparse=auto. Specify --sparse=always to create a sparse DEST file whenever the SOURCE file contains a long enough sequence of zero bytes. Use --sparse=never to inhibit creation of sparse files.
remove any trailing slashes from each SOURCE argument
make symbolic links instead of copying
override the usual backup suffix
move all SOURCE arguments into DIRECTORY
copy only when the SOURCE file is newer than the destination file or when the destination file is missing
explain what is being done
stay on this file system
output version information and exit