mirror of https://github.com/apache/cassandra
114 lines
4.3 KiB
XML
114 lines
4.3 KiB
XML
<?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.
|
|
-->
|
|
<project default="jar" name="word_count" xmlns:ivy="antlib:org.apache.ivy.ant">
|
|
<property name="cassandra.dir" value="../.." />
|
|
<property name="cassandra.dir.lib" value="${cassandra.dir}/lib" />
|
|
<property name="cassandra.classes" value="${cassandra.dir}/build/classes" />
|
|
<property name="build.src" value="${basedir}/src" />
|
|
<property name="build.dir" value="${basedir}/build" />
|
|
<property name="ivy.lib.dir" value="${build.dir}/lib" />
|
|
<property name="build.classes" value="${build.dir}/classes" />
|
|
<property name="final.name" value="word_count" />
|
|
<property name="ivy.version" value="2.1.0" />
|
|
<property name="ivy.url"
|
|
value="http://repo2.maven.org/maven2/org/apache/ivy/ivy" />
|
|
|
|
<condition property="ivy.jar.exists">
|
|
<available file="${build.dir}/ivy-${ivy.version}.jar" />
|
|
</condition>
|
|
|
|
<path id="autoivy.classpath">
|
|
<fileset dir="${ivy.lib.dir}">
|
|
<include name="**/*.jar" />
|
|
</fileset>
|
|
<pathelement location="${build.dir}/ivy-${ivy.version}.jar"/>
|
|
</path>
|
|
|
|
<path id="wordcount.build.classpath">
|
|
<fileset dir="${ivy.lib.dir}">
|
|
<include name="**/*.jar" />
|
|
</fileset>
|
|
<!-- cassandra dependencies -->
|
|
<fileset dir="${cassandra.dir.lib}">
|
|
<include name="**/*.jar" />
|
|
</fileset>
|
|
<fileset dir="${cassandra.dir}/build/lib/jars">
|
|
<include name="**/*.jar" />
|
|
</fileset>
|
|
<pathelement location="${cassandra.classes}/main" />
|
|
<pathelement location="${cassandra.classes}/thrift" />
|
|
</path>
|
|
|
|
<target name="init">
|
|
<mkdir dir="${build.classes}" />
|
|
</target>
|
|
|
|
<target depends="init,ivy-retrieve-build" name="build">
|
|
<javac destdir="${build.classes}">
|
|
<src path="${build.src}" />
|
|
<classpath refid="wordcount.build.classpath" />
|
|
</javac>
|
|
</target>
|
|
|
|
<target name="jar" depends="build">
|
|
<mkdir dir="${build.classes}/META-INF" />
|
|
<jar jarfile="${build.dir}/${final.name}.jar">
|
|
<fileset dir="${build.classes}" />
|
|
<fileset dir="${cassandra.classes}/main" />
|
|
<fileset dir="${cassandra.classes}/thrift" />
|
|
<fileset dir="${cassandra.dir}">
|
|
<include name="lib/**/*.jar" />
|
|
</fileset>
|
|
<zipfileset dir="${cassandra.dir}/build/lib/jars/" prefix="lib">
|
|
<include name="**/*.jar" />
|
|
</zipfileset>
|
|
<fileset file="${basedir}/cassandra.yaml" />
|
|
</jar>
|
|
</target>
|
|
|
|
<target name="clean">
|
|
<delete dir="${build.dir}" />
|
|
</target>
|
|
|
|
<!--
|
|
Ivy Specific targets
|
|
to fetch Ivy and this project's dependencies
|
|
-->
|
|
<target name="ivy-download" unless="ivy.jar.exists">
|
|
<echo>Downloading Ivy...</echo>
|
|
<mkdir dir="${build.dir}" />
|
|
<get src="${ivy.url}/${ivy.version}/ivy-${ivy.version}.jar"
|
|
dest="${build.dir}/ivy-${ivy.version}.jar" usetimestamp="true" />
|
|
</target>
|
|
|
|
<target name="ivy-init" depends="ivy-download" unless="ivy.initialized">
|
|
<mkdir dir="${ivy.lib.dir}"/>
|
|
<taskdef resource="org/apache/ivy/ant/antlib.xml"
|
|
uri="antlib:org.apache.ivy.ant"
|
|
classpathref="autoivy.classpath"/>
|
|
<property name="ivy.initialized" value="true"/>
|
|
</target>
|
|
|
|
<target name="ivy-retrieve-build" depends="ivy-init">
|
|
<ivy:retrieve type="jar,source" sync="true"
|
|
pattern="${ivy.lib.dir}/[type]s/[artifact]-[revision].[ext]" />
|
|
</target>
|
|
</project>
|