Apparently there are several bugs that prevent the ports framework from building ports such as emulators/linux-c6 as non-root user, even with NEED_ROOT=yes is set. 1. the port extracts directories to which it itself does not have permissions. This can be worked around by the port. 2. "make package" does not run as root even if NEED_ROOT=yes is given on the make command line, making it unable to package files such as compat/linux/etc/shadow with extremely restricted permissions. 3. "make clean" does not perform the equivalent of chmod -R u+rwX ${WRKDIR} so it fails deleting directories without write permission.
NEED_ROOT is not supported anymore in the ports tree it was a temporary requirement