On Thu, Sep 12, 2013 at 5:47 AM, Phil Holmes <m...@philholmes.net> wrote:
> I don't understand what you're fixing here, Julien. On my machine, > deleting the build directory completely, then recreating it and running > make (-j9 of course) completely rebuilds the binaries in a single pass. > Further immediate calls to make do nothing. > > Good to know, but here it doesn't work out quite like this. For me the emmentaler font files are being rebuilt on the second call to make. Somehow it thinks that the fontforge script files are newer than the font files, so it rebuilds the font files. I'll attach the log below. The patch fixes this. For make doc, a bunch of stuff is rebuilt on second pass, but fixing all this is hard to track. > The only significant bug in this area that I'm aware of is that modifying > metafont files does not cause the font files to be rebuilt - we have to do > some deleting in build/mf/out to force a rebuild. > Yep, that's bug 779: http://code.google.com/p/lilypond/issues/detail?id=779 John was working on it, it seems, but probably got sidetracked. Cheers, Julien
jrioux@camel ~/git/lilypond (master)$ git checkout master Already on 'master' jrioux@camel ~/git/lilypond (master)$ git pull Already up-to-date. jrioux@camel ~/git/lilypond (master)$ rm -rf build jrioux@camel ~/git/lilypond (master)$ mkdir build jrioux@camel ~/git/lilypond (master)$ ./autogen.sh --noconf &> /dev/null jrioux@camel ~/git/lilypond (master)$ cd build jrioux@camel ~/git/lilypond/build (master)$ ../configure --disable-optimising &> /dev/null jrioux@camel ~/git/lilypond/build (master)$ make &> /dev/null jrioux@camel ~/git/lilypond/build (master)$ make -n make --no-builtin-rules -C scripts/build make[1]: Entering directory `/home/jrioux/git/lilypond/build/scripts/build' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/scripts/build' make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C python all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C scripts all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C flower all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C lily all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C mf all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C ly all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C tex all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C ps all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C scm all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C po all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C elisp all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C vim all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C input all && make --no-builtin-rules PACKAGE=LILYPOND package=lilypond -C Documentation all && true make[1]: Entering directory `/home/jrioux/git/lilypond/build/python' make PACKAGE=LILYPOND package=lilypond -C auxiliar all && true make[2]: Entering directory `/home/jrioux/git/lilypond/build/python/auxiliar' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/python/auxiliar' make[1]: Leaving directory `/home/jrioux/git/lilypond/build/python' make[1]: Entering directory `/home/jrioux/git/lilypond/build/scripts' make PACKAGE=LILYPOND package=lilypond -C build man && true make[2]: Entering directory `/home/jrioux/git/lilypond/build/scripts/build' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/scripts/build' make PACKAGE=LILYPOND package=lilypond -C build all && true make[2]: Entering directory `/home/jrioux/git/lilypond/build/scripts/build' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/scripts/build' make[1]: Leaving directory `/home/jrioux/git/lilypond/build/scripts' make[1]: Entering directory `/home/jrioux/git/lilypond/build/flower' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/flower' make[1]: Entering directory `/home/jrioux/git/lilypond/build/lily' true true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/lily' make[1]: Entering directory `/home/jrioux/git/lilypond/build/mf' cd ./out && /usr/local/bin/fontforge -script emmentaler-11.pe cd ./out && /usr/local/bin/fontforge -script emmentaler-13.pe cd ./out && /usr/local/bin/fontforge -script emmentaler-14.pe cd ./out && /usr/local/bin/fontforge -script emmentaler-16.pe cd ./out && /usr/local/bin/fontforge -script emmentaler-18.pe cd ./out && /usr/local/bin/fontforge -script emmentaler-20.pe cd ./out && /usr/local/bin/fontforge -script emmentaler-23.pe make -C /home/jrioux/git/lilypond/build link-mf-tree make[2]: Entering directory `/home/jrioux/git/lilypond/build' make[2]: Nothing to be done for `link-mf-tree'. make[2]: Leaving directory `/home/jrioux/git/lilypond/build' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/mf' make[1]: Entering directory `/home/jrioux/git/lilypond/build/ly' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/ly' make[1]: Entering directory `/home/jrioux/git/lilypond/build/tex' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/tex' make[1]: Entering directory `/home/jrioux/git/lilypond/build/ps' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/ps' make[1]: Entering directory `/home/jrioux/git/lilypond/build/scm' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/scm' make[1]: Entering directory `/home/jrioux/git/lilypond/build/po' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/po' make[1]: Entering directory `/home/jrioux/git/lilypond/build/elisp' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/elisp' make[1]: Entering directory `/home/jrioux/git/lilypond/build/vim' true make[1]: Leaving directory `/home/jrioux/git/lilypond/build/vim' make[1]: Entering directory `/home/jrioux/git/lilypond/build/input' make PACKAGE=LILYPOND package=lilypond -C regression all && true make[2]: Entering directory `/home/jrioux/git/lilypond/build/input/regression' make PACKAGE=LILYPOND package=lilypond -C midi all && make PACKAGE=LILYPOND package=lilypond -C musicxml all && make PACKAGE=LILYPOND package=lilypond -C abc2ly all && make PACKAGE=LILYPOND package=lilypond -C lilypond-book all && true make[3]: Entering directory `/home/jrioux/git/lilypond/build/input/regression/midi' true make[3]: Leaving directory `/home/jrioux/git/lilypond/build/input/regression/midi' make[3]: Entering directory `/home/jrioux/git/lilypond/build/input/regression/musicxml' true make[3]: Leaving directory `/home/jrioux/git/lilypond/build/input/regression/musicxml' make[3]: Entering directory `/home/jrioux/git/lilypond/build/input/regression/abc2ly' true make[3]: Leaving directory `/home/jrioux/git/lilypond/build/input/regression/abc2ly' make[3]: Entering directory `/home/jrioux/git/lilypond/build/input/regression/lilypond-book' /home/jrioux/git/lilypond/./input/regression/lilypond-book/GNUmakefile:24: warning: overriding commands for target `out/collated-files.list' /home/jrioux/git/lilypond/./make/lysdoc-rules.make:6: warning: ignoring old commands for target `out/collated-files.list' true make[3]: Leaving directory `/home/jrioux/git/lilypond/build/input/regression/lilypond-book' make[2]: Leaving directory `/home/jrioux/git/lilypond/build/input/regression' make[1]: Leaving directory `/home/jrioux/git/lilypond/build/input' make[1]: Entering directory `/home/jrioux/git/lilypond/build/Documentation' make PACKAGE=LILYPOND package=lilypond -C logo all && make PACKAGE=LILYPOND package=lilypond -C pictures all && make PACKAGE=LILYPOND package=lilypond -C misc all && make PACKAGE=LILYPOND package=lilypond -C po all && make PACKAGE=LILYPOND package=lilypond -C css all && make PACKAGE=LILYPOND package=lilypond -C topdocs all && make PACKAGE=LILYPOND package=lilypond -C ly-examples all && make PACKAGE=LILYPOND package=lilypond -C cs all && make PACKAGE=LILYPOND package=lilypond -C de all && make PACKAGE=LILYPOND package=lilypond -C es all && make PACKAGE=LILYPOND package=lilypond -C fr all && make PACKAGE=LILYPOND package=lilypond -C hu all && make PACKAGE=LILYPOND package=lilypond -C it all && make PACKAGE=LILYPOND package=lilypond -C ja all && make PACKAGE=LILYPOND package=lilypond -C nl all && make PACKAGE=LILYPOND package=lilypond -C zh all && true make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/logo' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/logo' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/pictures' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/pictures' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/misc' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/misc' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/po' /home/jrioux/git/lilypond/./Documentation/po/GNUmakefile:28: warning: overriding commands for target `po-update' /home/jrioux/git/lilypond/stepmake/stepmake/podir-targets.make:14: warning: ignoring old commands for target `po-update' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/po' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/css' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/css' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/topdocs' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/topdocs' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/ly-examples' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/ly-examples' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/cs' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/cs' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/de' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/de' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/es' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/es' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/fr' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/fr' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/hu' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/hu' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/it' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/it' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/ja' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/ja' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/nl' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/nl' make[2]: Entering directory `/home/jrioux/git/lilypond/build/Documentation/zh' true make[2]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation/zh' make[1]: Leaving directory `/home/jrioux/git/lilypond/build/Documentation' jrioux@camel ~/git/lilypond/build (master)$
_______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel