Generated files ’doc/os-conf-*.texi’ and “make“

  • Open
  • quality assurance status badge
Details
3 participants
  • Sarah Morgensen
  • Ludovic Courtès
  • zimoun
Owner
unassigned
Submitted by
zimoun
Severity
normal
Merged with
Z
Z
zimoun wrote on 17 Sep 2020 23:14
Generated files ’doc/os-conf-*.texi ’ and “make“
(address . bug-guix@gnu.org)
86a6xoyuld.fsf@gmail.com
Dear,

The steps:

./bootstrap
./configure --localstatedir=/var/
make info

leads to the error:

Toggle snippet (21 lines)
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.

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

Well, I have tried to give a look to the configuration files of ‘make’
but it is a bit obscure to me.


This behaviour, is it expected? Or do I miss a ’make’ rule?

All the best,
simon
L
L
Ludovic Courtès wrote on 18 Sep 2020 14:15
Re: bug#43479: Generated files ’doc/os-conf-* .texi’ and “make“
(name . zimoun)(address . zimon.toutoune@gmail.com)(address . 43479@debbugs.gnu.org)
87363fz3g6.fsf@gnu.org
Hi,

zimoun <zimon.toutoune@gmail.com> skribis:

Toggle quote (31 lines)
> 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’.

Toggle quote (2 lines)
> 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:

Toggle snippet (6 lines)
# 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)

Ludo’.
Z
Z
zimoun wrote on 18 Sep 2020 22:18
Re: bug#43479: Generated files ’doc/os-conf-*.texi ’ and “make“
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 43479@debbugs.gnu.org)
CAJ3okZ3+d7NiUNV6YvnmapoqU=0H=a_JZL1ObbmzVAa3Cwy0Xw@mail.gmail.com
On Fri, 18 Sep 2020 at 14:15, Ludovic Courtès <ludo@gnu.org> wrote:

Toggle quote (5 lines)
> > 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’.

Well, I am doing for such case: make RET C-c C-c C-c Because the files
are generated at the very beginning.


Toggle quote (5 lines)
> > 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).

Hum? Ok.


Toggle quote (9 lines)
> 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---

Yah, I have tried to tweak a lot of stuff and it has always failed.
Simon's relationship with configure and Makefile.am: is complicated.
:-)
Well, since these files are only a hard copy of files in
gnu/system/examples/, does it make sense to simply symlink them and
remove the rule?

Cheers,
simon
L
L
Ludovic Courtès wrote on 19 Sep 2020 11:35
Re: bug#43479: Generated files ’doc/os-conf-* .texi’ and “make“
(name . zimoun)(address . zimon.toutoune@gmail.com)(address . 43479@debbugs.gnu.org)
87k0wqrtx5.fsf@gnu.org
zimoun <zimon.toutoune@gmail.com> skribis:

Toggle quote (16 lines)
>> 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---
>
> Yah, I have tried to tweak a lot of stuff and it has always failed.
> Simon's relationship with configure and Makefile.am: is complicated.
> :-)
> Well, since these files are only a hard copy of files in
> gnu/system/examples/, does it make sense to simply symlink them and
> remove the rule?

You can try, but the comment above about out-of-source-tree builds
suggests it won’t work. :-)

(That’s because .info is treated specially; namely, Info files are part
of the distribution, so they are always built in the source tree.)

Ludo’.
Z
Z
zimoun wrote on 25 Sep 2020 15:43
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 43479@debbugs.gnu.org)
87d02a3rbl.fsf@gmail.com
Hi,

On Sat, 19 Sep 2020 at 11:35, Ludovic Courtès <ludo@gnu.org> wrote:
Toggle quote (21 lines)
> zimoun <zimon.toutoune@gmail.com> skribis:
>
>>> 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---
>>
>> Yah, I have tried to tweak a lot of stuff and it has always failed.
>> Simon's relationship with configure and Makefile.am: is complicated.
>> :-)
>> Well, since these files are only a hard copy of files in
>> gnu/system/examples/, does it make sense to simply symlink them and
>> remove the rule?
>
> You can try, but the comment above about out-of-source-tree builds
> suggests it won’t work. :-)

Symbolic links do not work. :-)
Hard links fix my problem, but I am not sure that what we want.

Toggle quote (3 lines)
> (That’s because .info is treated specially; namely, Info files are part
> of the distribution, so they are always built in the source tree.)

One easy fix is to add a copy in ‘./bootstrap’. Yes, it is
unsatisfactory because a modification of
gnu/system/examples/<whatever>.tmpl will not regenerate the correct file
in doc/; note it is already the case now –if I understand correctly.


Cheers,
simon
S
S
Sarah Morgensen wrote on 26 Sep 2021 05:26
control message for bug #34467
(address . control@debbugs.gnu.org)
E1mUKoU-0008JG-Cf@debbugs.gnu.org
merge 34467 43479
quit
?