GNU bug report logs -
#49317
dist: depends on $(BUILT_SOURCES), but has no reason to
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#49317: dist: depends on $(BUILT_SOURCES), but has no reason to
which was filed against the automake package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 49317 <at> debbugs.gnu.org.
--
49317: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=49317
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Hi Allison - Jim finished pushing your patch a day or two
ago. Complications in testing. Thanks for the contribution! --karl
[Message part 3 (message/rfc822, inline)]
BUILT_SOURCES solves a useful problem and we use it in our package for
a few things. Its stated purpose (from the docs) is all about
compilation and dependency tracking. It makes sense that
$(BUILT_SOURCES) should then be built as a prerequisite before any
targets that result in compilation: all, check, install-exec, ...
`make dist` doesn't compile the program, though: it distributes the
sources. And usually generated files are not distributed. If they
were to be disted, they could be listed explicitly for being disted
(for example in a _SOURCES variable or so). We go out of the way to
put our compiled sources in nodist_ variables, and indeed, they're not
disted.
But because of the above dependency `make dist` still builds them (and
then ignores them).
Of course, there might be a edgecase where the disted tarball should
contain content that is output by a C program which needs to be
compiled and contains, itself, some generated sources. Indeed, this
change was introduced in 2017, in this commit:
commit ac47c22e3c0c8b055cdd47ccd18621c56f807b37
Author: Jim Meyering <meyering <at> fb.com>
AuthorDate: Thu Mar 20 12:31:32 2014 -0700
Commit: Jim Meyering <meyering <at> fb.com>
CommitDate: Tue Nov 28 19:05:59 2017 -0800
"make dist" did not depend on $(BUILT_SOURCES)
in response to this report:
https://lists.gnu.org/r/bug-hello/2014-03/msg00016.html
GNU Hello builds its manpage (which it dists) by building and running
the binary and capturing its --help output.
A blanket depend on $(BUILT_SOURCES) for all automake-using projects
seems to be much too large of a hammer to solve that specific problem.
Thanks very much,
Allison Karlitskaya
This bug report was last modified 3 years and 314 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.