Parallel builds are made by utilizing the jobserver protocol. Each job
have to take so called token and return it when it finishes. Jobserver
creates the pipe, consisting of read and write files, that are passed to
each goredo instance. Job takes the token by reading the single byte
from that pipe, writing it back for returning. Pipe is pre-filled with
required number of tokens.

goredo can be integrated with
=> NetBSD's
=> (bmake)
=> GNU Make (gmake)
jobserver protocol. Three of them use the same principle of
jobserver, but different ways of passing pipe's file descriptors
numbers to child process.

$REDO_MAKE environment variable controls the compatibility behaviour:

bmake
    Pass "-j 1 -J X,Y" arguments through $MAKEFLAGS variable.
gmake
    Pass "--jobserver-auth=X,Y" arguments through $MAKEFLAGS variable.
    Beware that only --jobserver-style=pipe protocol is supported!
    => https://www.gnu.org/software/make/manual/html_node/POSIX-Jobserver.html
none
    Pass "X,Y" arguments through $REDO_JS_FD variable.
    Used by default, if $REDO_MAKE is not set.