# ant-user mailing list archives

##### Site index · List index
Message view
Top
From Stefan Kost <s.k...@webmacher.de>
Subject Re: xsl script to generate graphical representation of build.xml
Date Mon, 10 Jun 2002 07:30:39 GMT
Am Don, 2002-06-06 um 23.10 schrieb Erik Hatcher:
> Very cool, thanks Nascif.
>
> I've whipped up a simple build file to automate this:
>
> <project name="diagram" default="main">
>
>   <target name="build-dot">
>     <xslt in="build.xml"
>           style="${ant.home}/etc/ant2dot.xsl" > out="dotfile.dot" > /> > </target> > > <target name="diagram" depends="build-dot"> > <exec executable="c:\tools\graphviz\bin\dot.exe"> > <arg value="-Tpng"/> > <arg file="dotfile.dot"/> > <arg value="-obuild.png"/> > </exec> > </target> > > <target name="main" depends="diagram"/> > </project> > > Of course hard-coded paths and such need to be factored out to properties, > but thats not high on my to-do list! :) I call it like this from any > directory: > > ant -f <path to this file>/diagram.xml -Dbasedir=. > > and it diagrams the build.xml in my current directory. > > I, as you can tell, put the XSL file in ANT_HOME/etc. Do folks want this > file in Ant's codebase and distribution? Any objections? Stefan?$ANT_HOME/etc is just fine, as there are already xsl files there.

About the directions of the arrows; it depends on how one reads the the
graph. I read it as : in which way are the targets executed.
The other way around would be the dependency view.

I could offer adding a parameter, which allows the user to choose the
order. I this desired ?

Stefan
>
>     Erik
>
>
>
> ----- Original Message -----
> From: "Nascif Abousalh-Neto" <nascif@nortelnetworks.com>
> To: "Erik Hatcher" <jakarta-ant@ehatchersolutions.com>; "Ant Users List"
> <ant-user@jakarta.apache.org>
> Cc: <s.kost@webmacher.de>
> Sent: Thursday, June 06, 2002 4:10 PM
> Subject: RE: xsl script to generate graphical representation of build.xml
>
>
> > That is really cool! I tried Erik's version and found some small problems:
> >  - It was not supressing text inside tags, like you would have in embedded
> > scripts and the project description. The XSL default is to print text
> > elements, and that was breaking dot.
> >  - The arrow orientation was counter-intuitive, so I inverted then. IMHO
> it
> > makes more sense if the dependent points to its depency, specially when a
> a
> > node depends on many others (like an "all" target).
> >
> > The attached .xsl file solves both problems. Also attached some examples.
> >
> > Enjoy,
> > Nascif
> >
> >
> > > -----Original Message-----
> > > From: Erik Hatcher [mailto:jakarta-ant@ehatchersolutions.com]
> > > Sent: Wednesday, June 05, 2002 8:27 PM
> > > To: Ant Users List
> > > Subject: Re: xsl script to generate graphical representation of
> > > build.xml
> > >
> > >
> > > Eager to see what this thing could do with my build files, I
> > > *gasp* read the
> > > docs and found exactly what I needed.  Attached is a slightly modified
> > > version of Stefan's original XSL file - all I did was enclose
> > > all the node
> > > names with double quotes.
> > >
> > > Let me know if you want this contributed to Ant's CVS.  This
> > > would even make
> > > a handy custom Ant task, to wrap calling dot.exe - although
> > > I'll get by with
> > > <xslt> and <exec> for now.
> > >
> > > Very nice, Stefan.
> > >
> > > Thanks,
> > >     Erik
> > >
> > > ----- Original Message -----
> > > From: "Erik Hatcher" <jakarta-ant@ehatchersolutions.com>
> > > To: "Ant Users List" <ant-user@jakarta.apache.org>
> > > Sent: Wednesday, June 05, 2002 7:58 PM
> > > Subject: Re: xsl script to generate graphical representation
> > > of build.xml
> > >
> > >
> > > > This looks pretty slick.  I tried it out and got this while
> > > running 'dot'
> > > >
> > > > graph parser: syntax error near line 18
> > > > context:    >>>  do- <<< common [label="do-common\n"];
> > > >
> > > > Looks like it doesn't like dashes in target names.  Is
> > > there a way to have
> > > > them escaped in the .dot files?  Would you modify it so
> > > that it could work
> > > > in such cases?  It still generated a .png, but it looked incomplete.
> > > >
> > > > Many thanks for this contribution.  Would you mind this
> > > being committed to
> > > > Ant's CVS for inclusion into Ant 1.6?  If so, let me know.
> > > >
> > > >     Erik
> > > >
> > > > ----- Original Message -----
> > > > From: "Stefan Kost" <s.kost@webmacher.de>
> > > > To: "Ant Users List" <ant-user@jakarta.apache.org>
> > > > Cc: <ant-dev@jakarta.apache.org>
> > > > Sent: Wednesday, June 05, 2002 4:50 AM
> > > > Subject: xsl script to generate graphical representation of
> > > build.xml
> > > >
> > > >
> > > > > hi,
> > > > >
> > > > > attached you find a xsl script, which generates a .dot out of a
> > > > > build.xml file. The dot file can be rendered using the
> > > dot command (from
> > > > > the graphviz package, see http://www.graphviz.org/) to
> > > lots of formats
> > > > > like ps or png.
> > > > > Minimal instructions are in the xsl file.
> > > > >
> > > > > Stefan
> > > > > --
> > > > >
> > > > >  < W E B M A C H E R >
> > > > > EDV+INTERNETSERVICE GMBH
> > > > >
> > > > > POST: August Bebel Str. 69
> > > > >       04275 Leipzig
> > > > >
> > > > > FON:  +49 341 30 34 833
> > > > > FAX:  +49 341 30 34 840
> > > > > WEB:  www.webmacher.de
> > > > >
> > > >
> > > >
> > > >
> > > --------------------------------------------------------------
> > > ------------
> > > --
> > > > ----
> > > >
> > > >
> > > > > --
> > > > > To unsubscribe, e-mail:
> > > <mailto:ant-user-unsubscribe@jakarta.apache.org>
> > > > > For additional commands, e-mail:
> > > <mailto:ant-user-help@jakarta.apache.org>
> > > >
> > > >
> > > > --
> > > > To unsubscribe, e-mail:
> > <mailto:ant-user-unsubscribe@jakarta.apache.org>
> > > For additional commands, e-mail:
> <mailto:ant-user-help@jakarta.apache.org>
> > >
> > >
> >
> >
>
>
> --
> To unsubscribe, e-mail:   <mailto:ant-user-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail: <mailto:ant-user-help@jakarta.apache.org>
>
--

< W E B M A C H E R >
EDV+INTERNETSERVICE GMBH

POST: August Bebel Str. 69
04275 Leipzig

FON:  +49 341 30 34 833
FAX:  +49 341 30 34 840
WEB:  www.webmacher.de

--
To unsubscribe, e-mail:   <mailto:ant-user-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ant-user-help@jakarta.apache.org>


Mime
View raw message