Bill,

Can't you use the refid?  You are creating a fileset with an id (<fileset id="OBJS">), and you can refer to that anywhere else by using:

        <fileset refid="OBJS" />

Which you can wrap in an <uptodate> task.  Alternatively, you could easily knock up a bit of script to create a function that will convert the fileset to a string.  I think someone posted an example a few months back if you search the mail archives.

HTH,

Bill




"Bill Arnette" <[EMAIL PROTECTED]>
Sent by: [EMAIL PROTECTED]

18/08/2005 19:51

       
        To:        <Nant-users@lists.sourceforge.net>
        cc:        
        Subject:        [Nant-users] Property from fileset or vice versa?



Is there any way to create a property whose value is the list of resolved
files in a fileset, or failing that to create a fileset from a property?

What am I trying to do?  I am trying to write a build file for a WiX project
that lists the source/target files only once and has source file/obj file
dependency checking.   Here is my current build file:

<?xml version="1.0"?>
<project name="Dahmer"  xmlns="http://nant.sf.net/release/0.85-rc3/nant.xsd"

  default="all">
  <property name="SOURCES" value="videopro.wxs SharedComponents.wxs
Graphs.wxs"/>
  <property name="WIXOBJS" value="videopro.wixobj SharedComponents.wixobj
Graphs.wixobj" />
  <property name="MSI" value="VideoPro.msi" />
  <fileset id="OBJS">
     <include name="*.wixobj"/>
  </fileset>
  <target name="all" depends="compile"/>
  <target name="compile" depends="">
    <exec program="candle" commandline="${SOURCES}"/>
    <exec program="light" commandline="${WIXOBJS} -out ${MSI}"/>
  </target>
</project>

This works fine, but there is no file dependency checking.  How can I add
file dependency checking without adding the file names to multiple places in
the build file?  

If I could create a fileset given a property, I could use the up-to-date
task for that.  Or, if I could create property from a fileset, the SOURCES
property could be created from a fileset.

In the old days of MAKE we could do something like (ignoring inference
rules):
SOURCES=a.wxs b.wxs c.wxs
WIXOBJS=a.wixobj b.wixobj c.wixobj

VideoPro.msi : ${WIXOBJS}
  light ${WIXOBJS} -out VideoPro.msi

a.wxs : a.wixobj
  candle a.wxs

b.wxs : b.wixobj
  candle b.wxs

c.wxs : c.wixobj
  candle c.wxs

How do we do that with Nant?





-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Nant-users mailing list
Nant-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users

                                                                                                                               
As detailed in the company handbook, Avon Insurance has the facility to
monitor and read both incoming and outgoing communications by e-mail.

A copy of the company handbook can be found here: http://www.ho.nfumutual.co.uk/mutualnet/HANDBOOK/ITPolicies/ITSecure.htm



IMPORTANT
The information contained in this e-mail and any attachments is intended for the addressee only
and may contain legally privileged or confidential information. If you are not the intended
recipient you must not use, disclose, copy, distribute, alter, or take any action in reliance
on the information and Avon Insurance plc will not accept liability for any loss or damage howsoever
arising, directly or indirectly in reliance on it and gives no warranty or representation as to its
accuracy or reliability. If you are not the addressee, please notify us immediately on 01789 202121*
and delete the material from your computer and destroy any copies.

Avon Insurance plc reserves the right to monitor and record incoming and outgoing email messages for
the purposes of investigating or detecting unauthorised use of its system and ensuring its effective operation.
Avon Insurance plc will not accept liability for any loss or damage as a result of any virus being passed on.

Avon Insurance plc (No. 209606).
Registered in England. Registered Office: Arden Street, Stratford upon Avon, Warwickshire CV37 6WA.
Authorised and regulated by the Financial Services Authority.
A member of the NFU Mutual group of companies and the Association of British Insurers.

*For security and training purposes, telephone calls may be recorded and monitored.

Reply via email to