Implemented a TarCat Ant task to slurp tars directly into other tars. This allows us to preserve things like permissions and symlinks on hostile operating systems.
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@174 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/common.ant.xml b/common.ant.xml
index c01d278..cddd93f 100755
--- a/common.ant.xml
+++ b/common.ant.xml
@@ -143,17 +143,14 @@
</sequential>
</macrodef>
- <macrodef name="gwt.untar">
- <attribute name="src" />
- <attribute name="dest" />
+ <macrodef name="gwt.tgz.cat">
+ <attribute name="destfile" />
+ <element name="tar.elements" implicit="true" optional="true" />
<sequential>
- <!-- GNU tar handles permissions and symlinks correctly -->
- <exec executable="tar" failonerror="true">
- <arg value="-xpzf" />
- <arg file="@{src}" />
- <arg value="-C" />
- <arg file="@{dest}" />
- </exec>
+ <taskdef name="tar.cat" classname="com.google.gwt.ant.taskdefs.TarCat" classpath="${gwt.build.lib}/ant-gwt.jar" />
+ <tar.cat destfile="${project.dist}" compression="gzip" longfile="gnu">
+ <tar.elements />
+ </tar.cat>
</sequential>
</macrodef>