When using the source tarball, and building without pandoc, builds fail after make clean with a subsequent re-configure.
This is what happens when building multiple times in a Yocto workspace, e.g. using this recipe in the meta-security layer:
https://git.yoctoproject.org/meta-security/tree/meta-tpm/recipes-tpm2/tpm2-tss-engine/tpm2-tss-engine_1.1.0.bb?h=kirkstone&id=353078bc06c8b471736daab6ed193e30d533d1f1
When re-using the workspace, Yocto will issue a make clean before running autoreconf, ./configure and compiling.
Since the tarball includes the pre-processed man pages under man/man{1,3}/, and make clean erases the man page files (but not the directory), the subsequent ./configure picks up HAVE_MAN_PAGES:
|
AM_CONDITIONAL([HAVE_MAN_PAGES],[test -d "${srcdir}/man/man1" -o -n "$PANDOC"]) |
and tries to build them, even when pandoc is not available. This results in a build failure:
GEN man/man1/tpm2tss-genkey.1
/bin/sh: line 1: -s: command not found
from this Makefile line:
|
man/man1/%.1: man/%.1.md |
|
$(AM_V_GEN)mkdir -p man/man1 && cat $< | $(PANDOC) -s -t man >$@ |
The question is whether the pre-processed man pages just should not be deleted if they cannot be built, or whether the HAVE_MAN_PAGES condition should be determined differently.
When using the source tarball, and building without pandoc, builds fail after
make cleanwith a subsequent re-configure.This is what happens when building multiple times in a Yocto workspace, e.g. using this recipe in the meta-security layer:
https://git.yoctoproject.org/meta-security/tree/meta-tpm/recipes-tpm2/tpm2-tss-engine/tpm2-tss-engine_1.1.0.bb?h=kirkstone&id=353078bc06c8b471736daab6ed193e30d533d1f1
When re-using the workspace, Yocto will issue a
make cleanbefore runningautoreconf,./configureand compiling.Since the tarball includes the pre-processed man pages under
man/man{1,3}/, andmake cleanerases the man page files (but not the directory), the subsequent./configurepicks upHAVE_MAN_PAGES:tpm2-tss-engine/configure.ac
Line 139 in 766505b
and tries to build them, even when pandoc is not available. This results in a build failure:
from this Makefile line:
tpm2-tss-engine/Makefile.am
Lines 205 to 206 in 766505b
The question is whether the pre-processed man pages just should not be deleted if they cannot be built, or whether the
HAVE_MAN_PAGEScondition should be determined differently.