2009/9/8 Francis GALIEGUE <f...@one2team.com>: > On Tue, Sep 8, 2009 at 08:41, Andy > Stevens<insomniacpeng...@googlemail.com> wrote: >> Hi, >> >> Is there an easy way to calculate an arbitrary relative path between two >> files? >> Part of my Ant script copies a default configuration file to a build >> folder, in the course of which I modify it (with xmltask) with the >> location of some source files. At the moment I'm using <property >> location="${src.dir}" .../> to get the absolute path, but I'm curious >> whether there's a way to get a relative path instead . Since I know >> where it's being copied to, I could just use "../../${src.dir}", but >> that's a bit fragile if the build directory changes (which it will do >> - locally on my machine I use ${basedir}/build, but on our CI server >> it's likely to override this with some other directory). >> Ideally, I suppose I'd like to use something like <property >> location="${src.dir}" basedir="${build.dir}" .../> Is there anything >> like this in one of the "extras" libraries, or some other easy way to >> achieve it? > > You can use ant-contrib's <propertyregex>: > > <propertyregex property="relativepath" > input="${src.dir}" regexp="^${build.dir}/" replace=""/>
Unless I'm missing something, that only works if src.dir is below build.dir? Which is unlikely, as build.dir (by default ${basedir}/build and its subdirectories) only gets created during the build while src.dir (${basedir}/src) already exists... Andy -- http://pseudoq.sourceforge.net/ --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@ant.apache.org For additional commands, e-mail: user-h...@ant.apache.org