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.
77 lines
2.5 KiB
77 lines
2.5 KiB
<?xml version="1.0" encoding="UTF-8"?> |
|
<project name="libgrowl" default="build"> |
|
<property name="version" value="0.2" /> |
|
<property name="build.dir" value="build" /> |
|
<property name="classes.dir" value="${build.dir}/classes" /> |
|
<property name="target.dir" value="${build.dir}/dist" /> |
|
<property name="javadoc.dir" value="${build.dir}/apidocs" /> |
|
|
|
<property name="src.java.dir" value="src/java" /> |
|
<property name="src.native.dir" value="src/native" /> |
|
<property name="src.resources.dir" value="src/resources" /> |
|
|
|
<target name="build-java"> |
|
<mkdir dir="${classes.dir}" /> |
|
<javac debug="true" destdir="${classes.dir}" srcdir="${src.java.dir}" /> |
|
</target> |
|
|
|
<target name="build-headers" depends="build-java"> |
|
<javah destdir="${src.native.dir}" classpath="${classes.dir}" verbose="true"> |
|
<class name="info.growl.GrowlNative" /> |
|
</javah> |
|
</target> |
|
|
|
<target name="build-native"> |
|
<exec executable="make" dir="${src.native.dir}" failonerror="yes" /> |
|
|
|
<copy todir="${target.dir}"> |
|
<fileset dir="${src.native.dir}" includes="**/*.jnilib" /> |
|
</copy> |
|
</target> |
|
|
|
<target name="copy-resources"> |
|
<copy todir="${classes.dir}"> |
|
<fileset dir="${src.resources.dir}" includes="**/*" /> |
|
</copy> |
|
</target> |
|
|
|
<target name="build-jar" depends="build-java, copy-resources"> |
|
<mkdir dir="${target.dir}" /> |
|
<jar destfile="${target.dir}/libgrowl-${version}.jar" basedir="${classes.dir}"> |
|
<include name="info/growl/*.class"/> |
|
<manifest> |
|
<section name="info/growl/"> |
|
<attribute name="Implementation-Title" value="Growl Native Wrapper"/> |
|
<attribute name="Implementation-Version" value="${version}"/> |
|
<attribute name="Implementation-Vendor" value="Michael Stringer"/> |
|
</section> |
|
</manifest> |
|
</jar> |
|
</target> |
|
|
|
<target name="build" depends="build-jar,build-headers,build-native" /> |
|
|
|
<target name="javadoc" depends="build-jar"> |
|
<mkdir dir="${javadoc.dir}" /> |
|
|
|
<javadoc sourcepath="${src.java.dir}" destdir="${javadoc.dir}" |
|
author="yes" header="Growl Java APIs" /> |
|
</target> |
|
|
|
<target name="clean"> |
|
<delete dir="${build.dir}" /> |
|
<delete> |
|
<fileset dir="${src.native.dir}" includes="**/info_growl_*.h" /> |
|
</delete> |
|
|
|
<exec executable="make" dir="${src.native.dir}" failonerror="yes"> |
|
<arg line="clean" /> |
|
</exec> |
|
</target> |
|
|
|
<target name="run" depends="build"> |
|
<java classname="info.growl.test.TestGrowl" fork="true" dir="${target.dir}" classpath="${classes.dir}"> |
|
<jvmarg line="-Djava.library.path=."/> |
|
</java> |
|
</target> |
|
</project>
|
|
|