You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
186 lines
8.3 KiB
186 lines
8.3 KiB
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<project name="snappy-java-from-maven" default="package" basedir=".">
|
|
|
|
<property file="${user.home}/.m2/maven.properties" />
|
|
<property file="maven-build.properties" />
|
|
|
|
<property name="maven.build.finalName" value="snappy" />
|
|
<property name="maven.build.dir" value="target" />
|
|
<property name="maven.build.outputDir" value="${maven.build.dir}/classes" />
|
|
<property name="maven.build.srcDir.0" value="src/main/java" />
|
|
<property name="maven.build.resourceDir.0" value="src/main/java" />
|
|
<property name="maven.build.resourceDir.1" value="src/main/resources" />
|
|
<property name="maven.build.resourceDir.2" value="." />
|
|
<property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes" />
|
|
<property name="maven.build.testDir.0" value="src/test/java" />
|
|
<property name="maven.build.testResourceDir.0" value="src/test/java" />
|
|
<property name="maven.build.testResourceDir.1" value="src/test/resources" />
|
|
<property name="maven.test.reports" value="${maven.build.dir}/test-reports" />
|
|
<property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site" />
|
|
|
|
<property name="maven.repo.local" value="${user.home}/.m2/repository" />
|
|
<property name="maven.settings.offline" value="false" />
|
|
<property name="maven.settings.interactiveMode" value="true" />
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- Defining classpaths -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<path id="build.classpath">
|
|
</path>
|
|
<path id="build.test.classpath">
|
|
</path>
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- Cleaning up target -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<target name="clean" description="Clean the output directory">
|
|
<delete dir="${maven.build.dir}" />
|
|
</target>
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- Compilation target -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<target name="compile" description="Compile the code">
|
|
<mkdir dir="${maven.build.outputDir}" />
|
|
<javac destdir="${maven.build.outputDir}" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.6" verbose="false" fork="false" source="1.6">
|
|
<src>
|
|
<pathelement location="${maven.build.srcDir.0}" />
|
|
</src>
|
|
<classpath refid="build.classpath" />
|
|
</javac>
|
|
<copy todir="${maven.build.outputDir}">
|
|
<fileset dir="${maven.build.resourceDir.0}">
|
|
<include name="org/xerial/snappy/VERSION" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="${maven.build.outputDir}">
|
|
<fileset dir="${maven.build.resourceDir.1}">
|
|
<include name="org/xerial/snappy/*.bytecode" />
|
|
<include name="org/xerial/snappy/native/**" />
|
|
</fileset>
|
|
</copy>
|
|
<mkdir dir="${maven.build.outputDir}/META-INF/maven/org.xerial.snappy/snappy-java" />
|
|
<copy todir="${maven.build.outputDir}/META-INF/maven/org.xerial.snappy/snappy-java">
|
|
<fileset dir="${maven.build.resourceDir.2}">
|
|
<include name="LICENSE*" />
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- Test-compilation target -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<target name="compile-tests" depends="compile" description="Compile the test code" unless="maven.test.skip">
|
|
<mkdir dir="${maven.build.testOutputDir}" />
|
|
<javac destdir="${maven.build.testOutputDir}" nowarn="false" debug="true" optimize="false" deprecation="true" target="1.6" verbose="false" fork="false" source="1.6">
|
|
<src>
|
|
<pathelement location="${maven.build.testDir.0}" />
|
|
</src>
|
|
<classpath>
|
|
<path refid="build.test.classpath" />
|
|
<pathelement location="${maven.build.outputDir}" />
|
|
</classpath>
|
|
</javac>
|
|
<copy todir="${maven.build.testOutputDir}">
|
|
<fileset dir="${maven.build.testResourceDir.0}">
|
|
<exclude name="**/*.java" />
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- Run all tests -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<target name="test" depends="compile-tests, junit-missing" unless="junit.skipped" description="Run the test cases">
|
|
<mkdir dir="${maven.test.reports}" />
|
|
<junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
|
|
<sysproperty key="basedir" value="." />
|
|
<formatter type="xml" />
|
|
<formatter type="plain" usefile="false" />
|
|
<classpath>
|
|
<path refid="build.test.classpath" />
|
|
<pathelement location="${maven.build.outputDir}" />
|
|
<pathelement location="${maven.build.testOutputDir}" />
|
|
</classpath>
|
|
<batchtest todir="${maven.test.reports}" unless="test">
|
|
<fileset dir="${maven.build.testDir.0}">
|
|
<include name="**/Test*.java" />
|
|
<include name="**/*Test.java" />
|
|
<include name="**/*TestCase.java" />
|
|
<exclude name="**/*Abstract*Test.java" />
|
|
</fileset>
|
|
</batchtest>
|
|
<batchtest todir="${maven.test.reports}" if="test">
|
|
<fileset dir="${maven.build.testDir.0}">
|
|
<include name="**/${test}.java" />
|
|
<exclude name="**/*Abstract*Test.java" />
|
|
</fileset>
|
|
</batchtest>
|
|
</junit>
|
|
</target>
|
|
|
|
<target name="test-junit-present">
|
|
<available classname="junit.framework.Test" property="junit.present" />
|
|
</target>
|
|
|
|
<target name="test-junit-status" depends="test-junit-present">
|
|
<condition property="junit.missing">
|
|
<and>
|
|
<isfalse value="${junit.present}" />
|
|
<isfalse value="${maven.test.skip}" />
|
|
</and>
|
|
</condition>
|
|
<condition property="junit.skipped">
|
|
<or>
|
|
<isfalse value="${junit.present}" />
|
|
<istrue value="${maven.test.skip}" />
|
|
</or>
|
|
</condition>
|
|
</target>
|
|
|
|
<target name="junit-missing" depends="test-junit-status" if="junit.missing">
|
|
<echo>=================================== WARNING ===================================</echo>
|
|
<echo> JUnit is not present in your $ANT_HOME/lib directory. Tests not executed.</echo>
|
|
<echo>===============================================================================</echo>
|
|
</target>
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- Javadoc target -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<target name="javadoc" description="Generates the Javadoc of the application">
|
|
<javadoc sourcepath="${maven.build.srcDir.0}" packagenames="*" destdir="${maven.reporting.outputDirectory}/apidocs" access="public" old="false" verbose="false" locale="en_US" version="true" use="true" author="true" splitindex="false" nodeprecated="false" nodeprecatedlist="false" notree="false" noindex="false" nohelp="false" nonavbar="false" serialwarn="false" charset="UTF-8" linksource="false" breakiterator="false" />
|
|
</target>
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- Package target -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<target name="package" depends="compile,test" description="Package the application">
|
|
<jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar" compress="true" index="true" basedir="${maven.build.outputDir}" excludes="**/package.html" />
|
|
</target>
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- A dummy target for the package named after the type it creates -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<target name="jar" depends="package" description="Builds the jar for the application" />
|
|
|
|
<!-- ====================================================================== -->
|
|
<!-- Download dependencies target -->
|
|
<!-- ====================================================================== -->
|
|
|
|
<target name="test-offline">
|
|
<condition property="maven.mode.offline">
|
|
<equals arg1="${maven.settings.offline}" arg2="true" />
|
|
</condition>
|
|
</target>
|
|
|
|
</project>
|