On 05/10/2011 2:31 PM, Graham Percival wrote:
On Sun, Oct 02, 2011 at 02:50:12PM +0200, Julien Rioux wrote:
I had a look at website.make, and it strikes me as a shell script
written in make.
That's quite a fair assesement.
You of course have loops in make, attached you find a short rewrite
of that particular snippet. I can probably reduce it to even fewer
targets and make it simpler. If you want me to, I can look at the
whole file to makeify it.
Looks nice, and it seems to work, but I'm not certain that I
follow all the steps. More comments? :)
I took everything that was common about the processing of .te?? files
and put it in the EXTRACT_TEXI_FILENAMES macro.
I keep track of .tely manuals and .texi manuals separately because I
need to differentiate them later on.
When I see a rule with three actions, that's usually three different
rules. That's what I did with website-version.
Then comes website-xrefs which had the for loop. Same principle: break
it up into a target-dependency-recipe rule for each manual, and let make
figure out how to do the looping and also do it in parallel.
For the English manuals, we can use the pattern matching to connect
%.xref-map to Documentation/%.tely
For translated manuals, it would be easy to do the same if we knew
already what languages we have. The difficulty is in the idea that we
don't really know which languages are provided, and the pattern matching
doesn't do complex things like connecting %1.%2.xref-map to
Documentation/%2/%1.tely. Hence there's the foreach loop in there. The
basic idea is still the same though: write a target-dependency-recipe
rule for each manual.
Specifics:
- line 107 has an extra trailing )
Thanks.
- comments like lines 105 and 109 should probably read "get xrefs
for english te?? manuals"
Sure.
- I'm not certain if web is "a little bit special" (line 119) or
not. My initial instinct is that it's not special in this
context.
The difference is the extra --split=node flag passed to
extract_texi_filenames.py which I noticed in the original website.make
Cheers,
- Graham
--
Julien
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel