- From: Cameron McCormack <cam@mcc.id.au>
- Date: Mon, 14 Jul 2008 14:39:57 +1000
- To: public-svg-wg@w3.org
Anthony kindly agreed to give me his ACTION-2002 to look at migrating the SVG Tiny 1.2 spec over to the public CVS repository, which is now done. Here is a summary of what is now where. I have reworked the various scripts that were used to generate parts of the document so that only one script invocation is required to publish the whole spec. The scripts are in http://dev.w3.org/SVG/tools/, but you shouldn’t need to invoke them directly from there. In the 1.2T master directory (http://dev.w3.org/SVG/profiles/1.2T/master/) there is a Makefile that you can run (just by typing “make” when you’re in that directory) that will run the publication script. Due to the use of makefiles, incremental builds can now be done, so after your first invocation of make, making changes to one of the chapters, the IDL or the RelaxNG schema will cause only those chapters to be rebuilt that need to be. Publication is now configured in the publish.conf file that is in the master/ directory. The list of chapters and appendices that controlled the old scripts in chapters.xml is now a couple of entries in publish.conf. There are some options in this file that if changed, won’t do anything nice (e.g. changing MULTI_CHAPTER to “false”) until I get around to making the scripts work for the modules. The publish.conf is set up correctly for the 1.2T spec. All of the source files for the spec are now in master/, instead of IDL/IDD/schema being all over the shop. Also, no generated files in master/ are in the repository (and I think it would be best to keep it that way), though the generated files in publish/ are of course checked in. There’s a .cvsignore file in master/ that lists the generated files that are in master/ (though it doesn’t list the generated files in master/rng/, since that directory has a mix of generated and non-generated files). I encourage people to commit the new publish/ files each time they change the master/ sources. I have renamed a couple of files, too: ▪ svgudomheader.txt and udomidlheader.txt have become svgudom-header.txt and svgudomidl-header.txt in the master/ directory, for consistency with the chapter filenames they are headers for. ▪ elementTable.html and attributeTable.html from the old tools/makeTables.templates directory are now called elementTable-template.html and attributeTable-template.html in master/. The RelaxNG schema files that used to live in relaxng/Tiny-1.2-NG/ in the old repository are now in master/relaxng/. Those are the ones to edit if you want to change the schema. Running make will then update the generated snippets in master/rng/, which are the ones that are included in the spec chapters. Requirements for running the publication script: GNU make, libxml2, perl, the perl XML::LibXML module, java (for the IDL stuff), xmllint, xsltproc and rsync. That should be a subset of what was required before. Some of those probably could be cut down, given enough work. I haven’t tried running the scripts under cygwin, but I don’t think there’s anything there that should confuse it. One small problem is that there’s an issue with the CVS server on dev.w3.org at the moment, where the automatic checkout to http://dev.w3.org/SVG/ isn’t being performed completely. It seems to get stuck at some of the example/image files under /SVG/profiles/1.2T/publish, so for the time being some of the images in the spec may be missing when you view it. The systeam are looking at this. We should all start using the public repository for 1.2T now. If you have some changes to the 1.2T spec in your old repository working copy that you haven’t committed yet, you’ll have to cvs diff those and apply them to the files in the new repository. Do let me know if you encounter problems. Thanks, Cameron -- Cameron McCormack ≝ http://mcc.id.au/
Received on Monday, 14 July 2008 04:40:46 UTC