>>> configure: error: cannot find install-sh, install.sh, or shtool in "."
>>> "./.." "./../.."
>>> Why am I getting this message and how can I get around it?
>> Probably because you didn't properly populate your AC_CONFIG_AUX_DIR
>> directory. I'm guessing you aren't using automake (since automake will
>> automatically place a copy of install-sh into your CONFIG_AUX_DIR)? If
>> so, the solution is to manually place a version of install-sh alongside
>> your copies of config.guess and config.sub, all in the directory you
>> passed to AC_CONFIG_AUX_DIR (or, if you aren't using AC_CONFIG_AUX_DIR,
>> into your top-level directory, although I do recommend using
>> AC_CONFIG_AUX_DIR). The version of install-sh shipped with autoconf
>> 2.68 is adequate for the purpose.
> Nevertheless, it's surprising (to me) that AC_CANONICAL_BUILD would
> require install-sh.
Technically, it doesn't. But it _does_ require AC_CONFIG_AUX_DIR, and
AC_CONFIG_AUX_DIR documents that rather than probe for all possible
auxiliary files, it _only_ probes for install-sh and assumes all other
aux files are in the same location.
Can it be improved? Probably. Maybe we could add a macro that
registers a required aux file, and have AC_CONFIG_AUX_DIR probe for the
first such registered file rather than hard-coding the search for
install-sh. That way, using AC_CANONICAL_BUILD in isolation would then
warn you about missing config.guess, rather than missing install-sh.
But someone has to write the patches. Would you like to volunteer?