Fix test infrastructure for MacOS (and other small improvements)
This patch series fixes the test infrastructure so that it works correctly on MacOS, and contains some general BSD fixes, as well.
It also makes some small improvements, not specific to MacOS, such as robustly skipping tests in the default Makefile
target when prerequisites are not met, thus complementing existing skipping of tests by other targets when prerequisites git
, hg
, svn
, cvs
, cvs-fast-export
are not found.