In 1.9.x, the C API docs would be generated properly even if you didn't have ruby installed first. However, this has changed in 2.0.0 and 2.1.x.
Because lines 44-50 of configure.in expect baseruby to exist or set it to "echo executable host ruby is required....", I think the lines at the top of template/Doxyfile.tmpl don't work and so you end up with FILE_VERSION_FILTER and INPUT_FILTER set to "echo executable host ruby is required....", which causes the doxygen docs to be generated without the "Modules" and "Data Structures" tabs. This makes the docs far less useful.
In 1.9.x, baseruby isn't checked to exist at build time, FILE_VERSION_FILTER and INPUT_FILTER end up set to miniruby and all works fine.
There are several ways to fix this, either changing configure.in, changing template/Doxyfile.tmpl etc.
Thanks for the quick fix. I was looking at the commit, and wondering, did something perhaps unrelated slip into the commit accidentally? Or maybe I'm just not understanding how the changes to tool/file2lastrev.rb and tool/vcs.rb are related?
Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN to 2.0.0: REQUIRED, 2.1: REQUIRED
As time.rb requires date.so, tool/vcs.rb couldn't work on miniruby, which can't load extension libraries.
Now tool/vcs.rb doesn't require time.rb, so tool/file2lastrev.rb works in pure ruby.