Subject: bug#23599: Including search directories for pdf and dvi

From: Mohammad Akhlaghi <[email-masked]>
Date: Sun, 22 May 2016 19:18:48 +0900

Hello,

In buiding Gnuastro, we are using Gnulib's `build-aux/bootstrap'.

To keep the source files clean, we have configured the bootstrap
process to build all its files and directories in a directory named
"bootstrapped". In the Git repository (link below), this directory is
basically empty (except for a README file) and in the relase tarball
it is populated with all the bootstrapped directories. The general
structure can be seen in the repo on Savannah:

http://git.savannah.gnu.org/cgit/gnuastro.git/tree/

One of the files in Gnulib that can be imported (instead of having to
keep it in the version controlled source) is `fdl.texi' (the Texinfo
source for the GNU Free Documentation license). Until now we have this
file under version control in our `doc/' directory. But since it is
present in the Gnulib archives, I am working on importing it during
the bootstrap process (my current work is not yet merged into the
repository yet).

The bootstrapping process puts the file in
`bootstrapped/doc/fdl.texi'. So I have included the following line in
my `doc/Makefile.am':

    AM_MAKEINFOFLAGS = -I $(top_srcdir)/bootstrapped/doc

This works for `make' (to build Info files) and also for `make
html'. However, when I run `make pdf', or `make dvi', it complains
about not finding `fdl.texi'.

Looking at Automake's generated `.texi.dvi', or `.texi.pdf' rules in
`Makefile.in', I see that the `AM_MAKEINFOFLAGS' is not given to
`texi2dvi'. It is set in the `MAKEINFO' variable before calling
`texi2dvi'. Therefore `texi2dvi' isn't instructed look into this
directory and thus it can't generate the pdf or dvi outputs. When I
add this line by hand in the final Makefile's rule, it works and finds
the directory.

I currently have a workaround for this problem (copying or making a
symbolic link from the `bootstrapped/doc/fdl.texi' to the
`doc/fdl.texi' during the bootstrap process), however, this is not
elegant! This file is a bootstrapped file and it would be much better
and clear if it remains with the other bootstrapped files.

If I am doing something wrong or missing something, I would really
appreciate it if you could let me know.  Since the `AM_MAKEINFOFLAGS'
solution works in making Info and HTML outputs for this situation, but
not in pdf or dvi outputs, I thought it might be a bug and I am
sharing it with you here to see if you agree and if it is possible to
fix this problem.

Thank you very much,
Mohammad