I see the following on a FreeBSD system:
$ perl5.20.2 -Mblib t/makesimple.t
usage: make [-BeikNnqrstWwX]
[-C directory] [-D variable] [-d flags] [-f makefile]
[-I directory] [-J private] [-j max_jobs] [-m directory] [-T file]
[-V variable] [variable=value] [target ...]
1..0 # SKIP No make found in env.
But there is a make available:
$ which make
/usr/bin/make
And there's even GNU make:
$ which gmake
/usr/local/bin/gmake
Problem is probably that there's no -v switch in BSD make, and so the "make -v" command fails with a usage printed to stderr. There's nothing in stdout. A better check to see if a "make" is available would be to walk over the entries in $ENV{PATH} and check for a "make". Or use File::Which or a similar module.