But AM_PROG_AR truly does not define $RANLIB itself. Perhaps you are
using libtool and calling AC_PROG_LIBTOOL or LT_INIT?
Probably. So, how about changing the sentence from "should" to "may need", or is there some reason why AM_PROG_AR cannot AC_REQUIRE ranlib so that the sentence can be deleted and no action is necessary?