tl;dr - FreeBSD's default behavior (resolve the symlink and hard link the destination) is POSIX.
"The POSIX specification requires that if path1 is a symbolic link, a new link for the target of the symbolic link is created. Many systems by default or as an alternative provide a mechanism to avoid the implicit symbolic link lookup and create a new link for the symbolic link itself."