Hi Johannes,
(not replying inline: I wish Outlook would be more smart when it comes to
properly indenting the original message)
You'd actually use it like this:
<path id="antldr.classpath" >
<pathelement
file="${path::combine(sharedlibs.dir,'antlr-v3.x.jar')}" />
<pathelement
file="${path::combine(sharedlibs.dir,'stringtemplate-v3.x.jar')}" />
<pathelement
file="${path::combine(sharedlibs.dir,'antlr-v3.x.jar')}" />
</path>
<exec program="javac">
<arg value="-cp" />
<arg>
<path refid="antldr.classpath" />
</arg>
</exec>
Or you can use it inline:
<exec program="javac">
<arg value="-cp" />
<arg>
<path>
<pathelement
file="${path::combine(sharedlibs.dir,'antlr-v3.x.jar')}" />
<pathelement
file="${path::combine(sharedlibs.dir,'stringtemplate-v3.x.jar')}" />
<pathelement
file="${path::combine(sharedlibs.dir,'antlr-v3.x.jar')}" />
</path>
</arg>
</exec>
Note:
You use the "path" attribute of <pathelement> if you want to include an
existing PATH-like string (eg. the value of the CLASSPATH environment
variable).
Hope this helps,
Gert
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Johannes
Luber
Sent: zaterdag 22 december 2007 20:26
Cc: [email protected]
Subject: Re: [NAnt-users] Help with property needed
Gert Driesen schrieb:
> Hi Johannes,
>
> NAnt will not resolve PlatformID.Unix to its enum value.
>
> You can use this instead:
>
>
> ${operating-system::get-platform(environment::get-operating-system())=
> ='Unix
> '}
>
> However, this will only work if you're running NAnt on .NET 2.0 and
> higher (or Mono 2.0 profile).
>
> Or, you can use this:
>
> ${platform::is-unix()}
>
> This will work on all CLR's.
Thanks, the latter is certainly more general.
> May I ask why you need to know the (class)path separator?
I have the following property (new lines before the $ inserted for better
formatting):
<property name="antlr.classpath"
value="${path::combine(sharedlibs.dir,'antlr-v3.x.jar')}
${java.classpath.separator}
${path::combine(sharedlibs.dir,'stringtemplate-v3.x.jar')}
${java.classpath.separator}
${path::combine(sharedlibs.dir,'antlr-2.7.7.jar')}"/>
"${java.classpath.separator}" replaced ";" which doesn't work on Linux.
As I don't want different build files for each platform I require a way to
select the right separator.
> Have you tried using the <path> element:
> http://nant.sourceforge.net/release/latest/help/types/path.html
I didn't know that there is a <path>-element. Unfortunately, I can't find a
use case for this. How do I reference this:
<path id="classpath-includes" >
<pathelement
path="${path::combine(sharedlibs.dir,'antlr-v3.x.jar')}" />
<pathelement
path="${path::combine(sharedlibs.dir,'stringtemplate-v3.x.jar')}" />
<pathelement
path="${path::combine(sharedlibs.dir,'antlr-v3.x.jar')}" /> </path>
Thanks again!
Johannes
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft Defy all challenges.
Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
NAnt-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/nant-users
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
NAnt-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/nant-users