On Sat, Aug 25, 2012 at 12:16 AM, Daniel J Sebald wrote:
On 08/24/2012 06:55 PM, Daniel J Sebald wrote:
The only thing that I can think of (and which the others don't
have) is this dependency definition:
INFO_DEPS = $(srcdir)/octave.info
If one builds in a separate directory, then the destination for
octave.info is no longer in the source tree. I thought the answer was to
change "srcdir" to "DESTDIR", but that doesn't compile.
The octave.info files are built, but placed in the wrong directory. Here's
the contents in stages of build for the $(source)/doc/interpreter directory
(notice I said "source"):
It's not the wrong directory, it's how Automake defines info files to
be built. Automake considers info docs to be things that only
maintainers will build, are distributed with source, and hence end
users don't need to regenerate them. Remember there is the
version-controlled source tree, which is what we work with, and then
there's the source that is distributed in the octave-x.y.z.tar.gz,
which has some of the build steps already done so end users don't need
certain tools.
I looked through automake's logic and it does have a way to force info
files to be built in the build directory, but only if they are deleted
by a "clean" or "distclean" target, which is not what we want for
Octave.
Instead here's a changeset that fixes the dependencies by specifying
the correct path in $(srcdir) to octave.info so the *.txt files will
be generated when needed. Let me know if you all agree this captures
the situation correctly and it fixes the warnings you're seeing.