Subject: bug#43479: Generated files ’doc/os-conf-*.texi’ and “make“

From: Ludovic Courtès <[email-masked]>
Date: Fri, 18 Sep 2020 14:15:05 +0200

Hi,

zimoun <[email-masked]> skribis:

> The steps:
>
>   ./bootstrap
>   ./configure --localstatedir=/var/
>    make info
>
> leads to the error:
>
> Making info in po/guix
> make[1]: Entering directory '/home/simon/src/guix/wk/redoc/po/guix'
> make[1]: Nothing to be done for 'info'.
> make[1]: Leaving directory '/home/simon/src/guix/wk/redoc/po/guix'
> Making info in po/packages
> make[1]: Entering directory '/home/simon/src/guix/wk/redoc/po/packages'
> make[1]: Nothing to be done for 'info'.
> make[1]: Leaving directory '/home/simon/src/guix/wk/redoc/po/packages'
> make[1]: Entering directory '/home/simon/src/guix/wk/redoc'
> make[2]: Entering directory '/home/simon/src/guix/wk/redoc'
> make[2]: Leaving directory '/home/simon/src/guix/wk/redoc'
> Updating ./doc/version.texi
>   MAKEINFO doc/guix.info
> ./doc/guix.texi:11838: @include: could not find os-config-bare-bones.texi
> ./doc/guix.texi:11979: @include: could not find os-config-desktop.texi
> ./doc/guix.texi:11986: @include: could not find os-config-lightweight-desktop.texi
> make[1]: *** [Makefile:4146: doc/guix.info] Error 1
> make[1]: Leaving directory '/home/simon/src/guix/wk/redoc'
> make: *** [Makefile:5115: info-recursive] Error 1
>
> because the 3 .texi files have to be generated first; with another
> rule.  It seems expected that ‘make info’ builds the manual.

Yeah, it’s complicated; concretely, you have to run ‘make’.

> Furthermore, ‘make distclean’ does not remove these files.

It’s on purpose: those files are part of the distribution (they’re in
the tarball ‘make dist’ creates).

The reason seems to be that:

--8<---------------cut here---------------start------------->8---
# Bundle this file so that makeinfo finds it in out-of-source-tree builds.
BUILT_SOURCES        += $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO)
EXTRA_DIST           += $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO)
MAINTAINERCLEANFILES  = $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO)
--8<---------------cut here---------------end--------------->8---

Ludo’.