Commit Briefs
portable: template: allow for YACC
As with the main got project, allow for template to use the YACC environment variable -- either directly, or indirectly if set via ./configure in the main got project.
portable: template: use Makefile.common
libbsd-overlay needs to be declared properly with the correct AM_CFLAGS, but this only happens via a common Makefile.common.in template which gets filled out at ./configure time. This properly ensures libbsd compat libraries, such as getprogname() are correctly found on the system.
portable: template: add AC_USE_SYSTEM_EXTENSIONS
Fixes, for example, a few warnings on GNU systems where -D_GNU_SOURCE needs to be used for asprintf(3) visibility. Patch by Anna Vyalkova, thanks!
portable: tweak SHA1 detection/libbsd
Don't rely on AC_RUN_IFELSE as this breaks cross-compilation (voidlinux). Although this is better replaced with AC_CHECK_DECL. In template/ include checking for libbsd.
portable: template: use as a subproject
Move template into its own subproject as it's only needed at compile-time and shouldn't be installed. This needs compiling with the host compiler which is configurable via HOSTCC and HOSTCLFAG environment variables. This diff largely from op@ but additional tweaking from myself.