diff options
author | Yegor Kozlov <yegor@apache.org> | 2011-03-04 11:15:43 +0000 |
---|---|---|
committer | Yegor Kozlov <yegor@apache.org> | 2011-03-04 11:15:43 +0000 |
commit | 65989672af13566f02d4abb43d01243dc7412312 (patch) | |
tree | 8d889c581b00f404c83becee458dfb487d64e80d /patch.xml | |
parent | 6269ee23127a05d094cd7f1c79b1f0b9c2c78f24 (diff) | |
download | poi-65989672af13566f02d4abb43d01243dc7412312.tar.gz poi-65989672af13566f02d4abb43d01243dc7412312.zip |
ant target to create patches
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1077880 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'patch.xml')
-rwxr-xr-x | patch.xml | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/patch.xml b/patch.xml new file mode 100755 index 0000000000..56852f4b5f --- /dev/null +++ b/patch.xml @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<!--
+ =======================================================================
+ Use Apache Ant to generate a patch file.
+ =======================================================================
+-->
+<project name="create-patch" default="patchpackage" basedir=".">
+ <property environment="env"/>
+ <property name="patch.package" value="patch.tar.gz"/>
+ <property name="patch.file" value="patch.txt"/>
+
+ <condition property="svn.found">
+ <or>
+ <available file="svn" filepath="${env.PATH}"/>
+ <available file="svn.exe" filepath="${env.PATH}"/>
+ <available file="svn.exe" filepath="${env.Path}"/>
+ </or>
+ </condition>
+
+ <target name="createpatch">
+ <fail unless="svn.found" message="You need a version of svn to create the patch"/>
+ <exec executable="svn" output="${patch.file}">
+ <arg value="diff"/>
+ </exec>
+ </target>
+
+ <target name="newfiles">
+ <exec executable="svn" output="${patch.file}.tmp">
+ <arg value="status"/>
+ </exec>
+
+ <!-- prepare the list of files to include in patch.tar.gz -->
+ <loadfile srcfile="${patch.file}.tmp" property="tar.file.list">
+ <filterchain>
+ <!-- capture any new files -->
+ <linecontainsregexp>
+ <regexp pattern="(\?|A)......"/>
+ </linecontainsregexp>
+ <!-- filter out the first six characters -->
+ <tokenfilter>
+ <replaceregex pattern="(.......)" replace=""/>
+ </tokenfilter>
+ <!--remove line breaks -->
+ <striplinebreaks/>
+ </filterchain>
+ </loadfile>
+ </target>
+
+ <target name="patchpackage" depends="createpatch,newfiles">
+ <delete file="${patch.package}"/>
+ <tar includes="${tar.file.list}"
+ excludes="${patch.file}"
+ destfile="${patch.package}"
+ basedir="."
+ compression="gzip" >
+ </tar>
+ <delete file="${patch.file}.tmp"/>
+ </target>
+
+</project>
|