Stopped cache being located/created in a stupid place, relative to the CWD on the cache drive.
authorSimon Howkins <simonh@symbian.org>
Fri, 12 Feb 2010 11:57:01 +0000
changeset 896 e7f07235b184
parent 895 5b76b79b6713
child 897 53bb02c83036
Stopped cache being located/created in a stupid place, relative to the CWD on the cache drive. Work around limitation of ant-contrib regular expressions, so they're not thwarted by \s in the cache location property.
common/templates/source-spec.ant.xml.ftl
--- a/common/templates/source-spec.ant.xml.ftl	Fri Feb 12 11:54:33 2010 +0000
+++ b/common/templates/source-spec.ant.xml.ftl	Fri Feb 12 11:57:01 2010 +0000
@@ -1,6 +1,9 @@
 <?xml version="1.0"?>
 <project name="SF-SOURCESPEC" default="all" xmlns:hlm="http://www.nokia.com/helium">
 
+    <!-- Convert \s in cache location, because otherwise they disappear entirely when used in a regex replacement! -->
+    <propertyregex property="sf.spec.sourcesync.cachelocation.for.regex" input="${dollar}{sf.spec.sourcesync.cachelocation}" regexp="\\" replace="/" global="true" defaultValue="${dollar}{sf.spec.sourcesync.cachelocation}"/>
+    
 <#assign fileset = "" />
 <#assign sync_list = "" />
 <#assign bom_list  = "" />
@@ -20,8 +23,8 @@
             <istrue value="${dollar}{sf.spec.sourcesync.usecache}"/>
             <then>
                 <!-- Work out cache location from source location -->
-                <propertyregex property="sf.spec.sourcesync.cachelocation.${count}" input="${pkg_detail.source}" regexp="^http://developer.symbian.org/" casesensitive="false" replace="${dollar}{sf.spec.sourcesync.cachelocation}/Live/"/>
-		<propertyregex property="sf.spec.sourcesync.cachelocation.${count}" input="${pkg_detail.source}" regexp="^${ant['sf.spec.sourcesync.local.development.area']}/" casesensitive="false" replace="${dollar}{sf.spec.sourcesync.cachelocation}/LocalDev/"/>
+                <propertyregex property="sf.spec.sourcesync.cachelocation.${count}" input="${pkg_detail.source}" regexp="^http://developer.symbian.org/" casesensitive="false" replace="${dollar}{sf.spec.sourcesync.cachelocation.for.regex}/Live/"/>
+                <propertyregex property="sf.spec.sourcesync.cachelocation.${count}" input="${pkg_detail.source}" regexp="^${ant['sf.spec.sourcesync.local.development.area']}/" casesensitive="false" replace="${dollar}{sf.spec.sourcesync.cachelocation.for.regex}/LocalDev/"/>
             </then>
         </if>