avro and friends (some via ivy)

Patch by eevans

git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@904541 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Eric Evans 2010-01-29 16:23:49 +00:00
parent 542bd7904d
commit 26c95ff453
4 changed files with 66 additions and 4 deletions

View File

@ -32,7 +32,7 @@ cassandra_bin=$cassandra_home/build/classes
# The java classpath (required)
CLASSPATH=$CASSANDRA_CONF:$cassandra_bin
for jar in $cassandra_home/lib/*.jar; do
for jar in $cassandra_home/lib/*.jar $cassandra_home/build/lib/*.jar; do
CLASSPATH=$CLASSPATH:$jar
done

View File

@ -17,7 +17,8 @@
~ specific language governing permissions and limitations
~ under the License.
-->
<project basedir="." default="build" name="apache-cassandra-incubating">
<project basedir="." default="build" name="apache-cassandra-incubating"
xmlns:ivy="antlib:org.apache.ivy.ant">
<property environment="env"/>
<property file="build.properties" />
<property name="debuglevel" value="source,lines,vars"/>
@ -27,6 +28,7 @@
<property name="build.src.gen-java" value="${basedir}/src/gen-java"/>
<property name="build.lib" value="${basedir}/lib"/>
<property name="build.dir" value="${basedir}/build"/>
<property name="build.dir.lib" value="${basedir}/build/lib"/>
<property name="build.test.dir" value="${build.dir}/test"/>
<property name="build.classes" value="${build.dir}/classes"/>
<property name="javadoc.dir" value="${build.dir}/javadoc"/>
@ -41,6 +43,9 @@
<property name="dist.dir" value="${build.dir}/dist"/>
<property name="version" value="0.5.0"/>
<property name="final.name" value="${ant.project.name}-${version}"/>
<property name="ivy.version" value="2.1.0" />
<property name="ivy.url"
value="http://repo2.maven.org/maven2/org/apache/ivy/ivy" />
<!-- http://cobertura.sourceforge.net/ -->
<property name="cobertura.build.dir" value="${build.dir}/cobertura"/>
@ -49,7 +54,11 @@
<property name="cobertura.report.dir" value="${cobertura.build.dir}/report"/>
<property name="cobertura.classes.dir" value="${cobertura.build.dir}/classes"/>
<property name="cobertura.datafile" value="${cobertura.build.dir}/cobertura.ser"/>
<condition property="ivy.jar.exists">
<available file="${build.lib}/ivy-${ivy.version}.jar" />
</condition>
<!--
Add all the dependencies.
-->
@ -59,6 +68,9 @@
<fileset dir="${build.lib}">
<include name="**/*.jar" />
</fileset>
<fileset dir="${build.dir.lib}">
<include name="**/*.jar" />
</fileset>
</path>
<!--
@ -66,6 +78,7 @@
-->
<target name="init">
<mkdir dir="${build.classes}"/>
<mkdir dir="${build.dir.lib}"/>
<mkdir dir="${test.classes}"/>
<mkdir dir="${build.src.gen-java}"/>
</target>
@ -96,6 +109,24 @@
</java>
</target>
<target name="ivy-download" unless="ivy.jar.exists">
<echo>Downloading Ivy...</echo>
<get src="${ivy.url}/${ivy.version}/ivy-${ivy.version}.jar"
dest="${build.dir}/lib/ivy-${ivy.version}.jar" usetimestamp="true" />
</target>
<target name="ivy-init" depends="ivy-download" unless="ivy.initialized">
<taskdef resource="org/apache/ivy/ant/antlib.xml"
uri="antlib:org.apache.ivy.ant"
classpathref="cassandra.classpath"/>
<property name="ivy.initialized" value="true"/>
</target>
<target name="ivy-retrieve" depends="ivy-download,ivy-init">
<ivy:retrieve type="jar" conf="default" sync="true"
pattern="${build.dir.lib}/[artifact]-[revision].[ext]" />
</target>
<target name="gen-thrift-java">
<echo>Generating Thrift Java code from ${basedir}/interface/cassandra.thrift ....</echo>
<exec executable="thrift" dir="${basedir}/interface">
@ -118,7 +149,8 @@
<!--
The build target builds all the .class files
-->
<target name="build" depends="build-subprojects,build-project"/>
<target name="build"
depends="build-subprojects,build-project,ivy-retrieve"/>
<target name="build-subprojects"/>
<target name="codecoverage" depends="cobertura-instrument,test,cobertura-report"/>

30
ivy.xml Normal file
View File

@ -0,0 +1,30 @@
<!--
~ 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.
-->
<ivy-module version="2.0">
<info organisation="apache-cassandra" module="cassandra"/>
<dependencies>
<!-- FIXME: paranamer and jackson can be dropped after we're depending
on avro (since it depends on them). -->
<dependency org="com.thoughtworks.paranamer"
name="paranamer-ant" rev="2.1"/>
<dependency org="org.codehaus.jackson"
name="jackson-mapper-asl" rev="1.4.0"/>
</dependencies>
</ivy-module>

BIN
lib/avro-1.2.0-dev.jar Normal file

Binary file not shown.