lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: syntax changes before beta version


From: Reinhold Kainhofer
Subject: Re: syntax changes before beta version
Date: Sat, 19 Jul 2008 21:19:07 +0200
User-agent: KMail/1.9.9

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am Samstag, 19. Juli 2008 schrieb John Mandereau:
> > - -) decide how to modify the build process to use the
> > secname->filename/anchor map. We can either run texi2html twice on all
> > files (run it once on all files and only after that we can run it a
> > second time, this time with all maps from the other files available) or
> > try to create a hand-written script to extract that map and then run
> > texi2html only once. I'd prefer running texi2html twice, but that (1)
> > takes longer and (2) I don't know how hard it would be to implement in
> > the makefiles...
>
> As you have probably noticed in dev/texi2html branch, I've already
> splitted WWW into two stages WWW-1 and WWW-2.  When you want to test the
> code from the makefiles, just add a call of the hand-made script that
> writes files containing node trees (or texi2html, but I don't like this
> option for the reasons you mentioned) "at the end of local-WWW-1" i.e. a
> rule depending on $(outdir)/*.texi files, 

Okay, I've now added the script buildscripts/extract_texi_filenames.py to 
create that list (tab-separated file with entries 
NODENAME\tFILENAME\tANCHORNAME). I took the texi-gettext.py file and adjusted 
it (basically rewrote everything, but the ideas can still be seen in my 
script).

To be honest, I have never understood the makefile structure of lilypond.  
There are some files in make and some in stepmake, both apparently containing 
similar rules. Where exactly do I have to add the following rule:

%_xref.map: %.texi
        $(PYTHON) $(buildscript-dir)/extract_texi_filenames.py %<

And where do I have to add the variable 
XREF_MAP_FILES := $(MASTER_TEXI_FILES:%.texi=%_xref.map)

and where $(XREF_MAP_FILES) as prerequisites for a target?

Since texi2html is called in WWW2, once the .init script loads those 
*_xref.map files, everything should work.

The only issue that I see with the makefiles is that if one .tely file changes 
a node name, where other manuals point to, how can we make sure that those 
other manuals get rebuilt with the new link target file name? The *_xref.map 
file for that changed manual will be updated, but I don't see a way to 
automatically rebuild the other manuals except by adding all _xref.map files 
as prerequisites for all texinfo files. This would then mean that just one 
node name change would trigger a rebuild of all .html files, which is far 
from ideal...

> including shell commands to 
> move node trees info files to a common location (e.g. (top)/out/, and
> the real call of texi2html in local-WWW2.

What do you mean by this? I can't really move the nodename<=>filename map out 
of the tree, because then texi2html will not be able to find them. For now 
I'm thinking of creating the _xref.map file in the same directory as 
the .texi file. This way, it's quite easy to find it in texi2html...

BTW, is there a place for regression test cases of our buildscripts? I have 
generated a small texinfo file to test the output of my 
extract_texi_filenames.py, but didn't find any place in git to put it...

Cheers,
Reinhold

- -- 
- ------------------------------------------------------------------
Reinhold Kainhofer, Vienna University of Technology, Austria
email: address@hidden, http://reinhold.kainhofer.com/
 * Financial and Actuarial Mathematics, TU Wien, http://www.fam.tuwien.ac.at/
 * K Desktop Environment, http://www.kde.org, KOrganizer maintainer
 * Chorvereinigung "Jung-Wien", http://www.jung-wien.at/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFIgj4xTqjEwhXvPN0RAo/yAJ0QyWYU8+xYhcX9xmxa1mr9S0zBQQCfTvDv
AJrmORDTJMdUslNp/g4YUic=
=Jp2m
-----END PGP SIGNATURE-----




reply via email to

[Prev in Thread] Current Thread [Next in Thread]