You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@avro.apache.org by cu...@apache.org on 2010/01/12 23:26:55 UTC

svn commit: r898553 - in /hadoop/avro/trunk: CHANGES.txt lang/java/build.xml lang/java/ivy.xml

Author: cutting
Date: Tue Jan 12 22:26:55 2010
New Revision: 898553

URL: http://svn.apache.org/viewvc?rev=898553&view=rev
Log:
AVRO-282.  Improve avroj build to better specify dependencies.  Contributed by philz.

Modified:
    hadoop/avro/trunk/CHANGES.txt
    hadoop/avro/trunk/lang/java/build.xml
    hadoop/avro/trunk/lang/java/ivy.xml

Modified: hadoop/avro/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/avro/trunk/CHANGES.txt?rev=898553&r1=898552&r2=898553&view=diff
==============================================================================
--- hadoop/avro/trunk/CHANGES.txt (original)
+++ hadoop/avro/trunk/CHANGES.txt Tue Jan 12 22:26:55 2010
@@ -197,6 +197,9 @@
     AVRO-288. Implement schema resolution for Python parameters.
     (Jeff Hammerbacher via cutting)
 
+    AVRO-282. Improve avroj build to better specify dependencies.
+    (philz via cutting)
+
   OPTIMIZATIONS
 
     AVRO-172. More efficient schema processing (massie)

Modified: hadoop/avro/trunk/lang/java/build.xml
URL: http://svn.apache.org/viewvc/hadoop/avro/trunk/lang/java/build.xml?rev=898553&r1=898552&r2=898553&view=diff
==============================================================================
--- hadoop/avro/trunk/lang/java/build.xml (original)
+++ hadoop/avro/trunk/lang/java/build.xml Tue Jan 12 22:26:55 2010
@@ -135,7 +135,7 @@
     </condition>
   </target>
 
-  <target name="javacc" depends="ivy-retrieve">
+  <target name="javacc" depends="ivy-retrieve-build">
     <mkdir dir="${build.dir}/src/org/apache/avro/genavro"/>
     <copy tofile="${ivy.lib}/javacc.jar" file="${ivy.lib}/javacc-5.0.jar"
         overwrite="true"/>
@@ -176,11 +176,23 @@
 		  pattern="${ivy.lib}/[artifact]-[revision].[ext]"/>
   </target>
 
+  <target name="ivy-retrieve-avroj" depends="init,ivy-init">
+    <!-- Place in separate directory, since these artificats will
+         be packaged in the avroj jar. -->
+    <ivy:retrieve type="jar" conf="avroj"
+		  pattern="${ivy.lib}/avroj/[artifact]-[revision].[ext]"/>
+  </target>
+
   <target name="ivy-retrieve-test" depends="init,ivy-init">
     <ivy:retrieve type="jar" conf="test"
 		  pattern="${ivy.test.lib}/[artifact]-[revision].[ext]"/>
   </target>
 
+  <target name="ivy-retrieve-build" depends="init,ivy-init">
+    <ivy:retrieve type="jar" conf="build"
+		  pattern="${ivy.lib}/[artifact]-[revision].[ext]"/>
+  </target>
+
   <macrodef name="java-compiler">
     <attribute name="dest" default="${build.classes}"/>
     <attribute name="includes" default="**/*.java"/>
@@ -394,7 +406,8 @@
     <test-runner files.location="${test.java.classes}" tests.pattern="**/TestProtocolSpecific$InteropTest.class" />
   </target>
 
-  <target name="avroj" depends="compile" description="Build standalone avroj jar file">
+  <target name="avroj" depends="compile,ivy-retrieve-avroj"
+	  description="Build standalone avroj jar file">
     <jar jarfile="${build.dir}/avroj-${version}.jar">
       <manifest>
         <attribute name="Main-Class" value="org.apache.avro.tool.Main"/>
@@ -403,7 +416,7 @@
         <attribute name="Implementation-Vendor" value="${Org}"/>
       </manifest>
       <fileset dir="${build.classes}" />
-      <zipgroupfileset dir="${ivy.lib}" includes="*.jar"/>
+      <zipgroupfileset dir="${ivy.lib}/avroj" includes="*.jar"/>
     </jar>
     <chmod file="${build.dir}/avroj-${version}.jar" perm="ugo+x"/>
   </target>

Modified: hadoop/avro/trunk/lang/java/ivy.xml
URL: http://svn.apache.org/viewvc/hadoop/avro/trunk/lang/java/ivy.xml?rev=898553&r1=898552&r2=898553&view=diff
==============================================================================
--- hadoop/avro/trunk/lang/java/ivy.xml (original)
+++ hadoop/avro/trunk/lang/java/ivy.xml Tue Jan 12 22:26:55 2010
@@ -26,9 +26,11 @@
   </info>
 
   <configurations defaultconfmapping="default">
-    <conf name="default"/>
+    <conf name="default"/> <!-- "runtime" configuration -->
     <conf name="test"/>
     <conf name="eclipse"/>
+    <conf name="avroj" extends="default"/>
+    <conf name="build" extends="default"/>
   </configurations>
 
   <dependencies>
@@ -36,7 +38,7 @@
         rev="1.4.0"/>
     <dependency org="org.slf4j" name="slf4j-api" rev="1.5.8"/>
     <dependency org="org.slf4j" name="slf4j-simple" rev="1.5.8"
-        conf="test->default"/>
+        conf="test->default;avroj->default"/>
     <dependency org="com.thoughtworks.paranamer" name="paranamer"
         rev="2.1"/>
     <dependency org="com.thoughtworks.paranamer" name="paranamer-ant"
@@ -52,7 +54,8 @@
         conf="eclipse->default">
         <artifact name="ant-eclipse" type="bz2" />
     </dependency>
-    <dependency org="net.java.dev.javacc" name="javacc" rev="5.0" />
+    <dependency org="net.java.dev.javacc" name="javacc" rev="5.0" 
+        conf="build->default" />
     <dependency org="commons-lang" name="commons-lang" rev="2.4" />
   </dependencies>