Disable "A version with the same tree already is installed
somewhere" optimization when the script is run with --force.
Also be careful when crafting "--root=/dev/shm/testpen" option to
the test scripts; on Ubuntu, /dev/shm may be a symbolic link that
points at /run/shm, and "$TRASH_DIRECTORY" and $(pwd) may not match,
causing poorly written tests to fail.
Earlier one tried to build with /bin/sh and /bin/dash but to do so correctly
we need to 'make clean' in the middle, which is too much overhead to do many
times a day.
This can use the layout that has buildfarm under $HOME/g/$arch/buildfarm
and the layout that has it ../buildfarm, relative to the git tree. The
maintainer's home machines (and virtual ones) will use the former, while
the k.org machine will use the latter layout.
The test for nodoc was wrong and also missing from jch branch.
When dotest is not set, make was run twice. By running make with
just $dotest, we can build either (implicit) all or test.
The "pu" branch is a bit too hard to follow. Let's introduce
"next" branch, which is slightly ahead of "master". The topic
branches merged into it are not to be rebased, and changes to
the topic branches are first applied to them and then merged
into the "next" branch. What this means is that the branch is
far easier to follow compared to the "pu" branch since there
will be no rewinding/rebasing involved.