Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
<?xml version="1.0" encoding="UTF-8"?>
<project name="GenJ" default="dist" basedir=".">
<path id="project.class.path">
<pathelement path ="./build/version"/>
<pathelement path ="./build/classes/contrib"/>
<pathelement path ="./build/classes/core"/>
<pathelement path ="./build/classes/tst"/>
<fileset dir=".">
<include name="lib/*.jar"/>
<include name="contrib/**/*.jar"/>
</fileset>
<dirset dir="./language" includes="*"/>
<dirset dir="./src" includes="*"/>
<pathelement path ="./images"/>
</path>
<property name="project.class.path" refid="project.class.path"/>
<!--
Initialization
-->
<target name="init">
<echo level="info">Creating output directories</echo>
<mkdir dir="./build"/>
<mkdir dir="./build/run"/>
<mkdir dir="./build/dist"/>
<mkdir dir="./build/lib"/>
</target>
<!--
Create Applet Keyfile
-->
<target name="keyfile" depends="init">
<!-- generate a key -->
<delete file="./build/keyfile"/>
<genkey alias="genj" storepass="password" dname="CN=Nils Meier, OU=Unknown, O=genj.sourceforge.net, C=CA" keystore="./build/keyfile"/>
</target>
<!--
Launcher Compilation
-->
<target name="compile.launcher" depends="init">
<mkdir dir="./build/classes/launcher"/>
<javac srcdir="src/launcher" destdir="./build/classes/launcher"
debug="${javac.debug}" target="1.5" optimize="off" deprecation="on" encoding="ASCII" >
</javac>
</target>
<!--
Contrib Compilation
-->
<target name="compile.contrib" depends="init">
<mkdir dir="./build/classes/contrib"/>
<javac srcdir="src/contrib" destdir="./build/classes/contrib"
debug="${javac.debug}" target="1.5" optimize="off" deprecation="on" encoding="ASCII" >
<classpath refid="project.class.path"/>
</javac>
</target>
<!--
Core Compilation
-->
<target name="compile.core" depends="init">
<mkdir dir="./build/classes/core"/>
<javac srcdir="src/core" destdir="./build/classes/core"
debug="${javac.debug}" target="1.5" optimize="on" deprecation="on" encoding="ASCII" >
<classpath refid="project.class.path"/>
</javac>
</target>
<!--
Report Compilation
-->
<target name="compile.report" depends="init">
<mkdir dir="./build/classes/report"/>
<javac srcdir="src/report" destdir="./build/classes/report" excludes="rdf/**"
debug="${javac.debug}" target="1.5" optimize="off" deprecation="on" encoding="UTF-8" >
<classpath refid="project.class.path"/>
</javac>
<copy todir="./build/classes/report">
<fileset dir="src/report"/>
</copy>
</target>
<!--
Report Compilation
-->
<target name="compile.tst" depends="init">
<mkdir dir="./build/classes/tst"/>
<javac srcdir="src/tst" destdir="./build/classes/tst"
debug="${javac.debug}" target="1.5" optimize="off" deprecation="on" encoding="ASCII" >
<classpath refid="project.class.path"/>
</javac>
</target>
<!--
Compilation
-->
<target name="compile" depends="compile.contrib, compile.core, compile.report, compile.launcher">
</target>
<!--
Cleaning
-->
<target name="clean">
<echo level="info">Cleaning output directories</echo>
<delete includeemptydirs="true" failonerror="false">
<fileset dir="./build" excludes="eclipse/**"/>
</delete>
</target>
<!--
Version
-->
<target name="version" depends="init">
<echo level="info">Generating version number</echo>
<exec failifexecutionfails="false" failonerror="true" executable="svnversion" spawn="false" dir="." output="./build/revision.properties">
<arg line="-n"/>
</exec>
<loadfile failonerror="false" property="revision" srcfile="./build/revision.properties">
<filterchain><replacestring from=":" to="_"/></filterchain>
</loadfile>
<property name="revision" value="x.y"/>
<tstamp><format property="now" pattern="yyyy/MM/dd HH:mm:ss"/></tstamp>
<loadproperties srcfile="build.properties"/>
<property name="version" value="${revision}"/>
<property name="build" value="${version} (${revision}) ${now} ${user.name}"/>
<echo level="info">version=${version}</echo>
<echo level="info">build=${build}</echo>
<echo file="./build/version.properties">version = ${version}</echo>
<mkdir dir="./build/version/genj"/>
<echo file="./build/version/genj/resources.properties">version=${version}${line.separator}build=${build}</echo>
</target>
<!--
JavaDoc
-->
<target name="javadoc" depends="init, version">
<echo level="info">Generating API documentation</echo>
<delete dir="./build/javadoc"/>
<mkdir dir="./build/javadoc"/>
<javadoc destdir="./build/javadoc"
classpathref="project.class.path"
access="public"
windowtitle="GenealogyJ - ${version}"
doctitle="GenealogyJ - ${version}&lt;br&gt;Package Overview"
bottom="&lt;a href=http://genj.sourceforge.net target=sourceforge &gt;genj.sourceforge.net&lt;/a&gt;"
noindex="yes"
nohelp="yes"
nodeprecatedlist="yes">
<fileset dir="./src/core" defaultexcludes="yes">
<include name="genj/gedcom/*.java" />
<include name="genj/gedcom/time/*.java" />
<include name="genj/report/Report.java" />
<include name="genj/io/Gedcom*.java" />
<include name="genj/util/Origin.java" />
<include name="genj/util/Trackable.java" />
<include name="genj/chart/**.java" />
</fileset>
</javadoc>
</target>
<!--
Distribution - javadocs
-->
<target name="dist.javadoc" depends="javadoc, version" if="javadoc">
<zip zipfile="./build/dist/genj_javadoc-${version}.zip" update="True">
<fileset dir="./build" includes="javadoc/**"/>
</zip>
</target>
<!--
Distribution - a language
-->
<target name="dist.language" depends="version">
<!-- zip all resources_xx.properties files into genj_ll.jar -->
<jar jarfile="./build/lib/genj_${language}.jar" update="True">
<fileset dir="./language/${language}"/>
</jar>
<!-- create genj_ll-xyz.zip -->
<zip zipfile="./build/dist/genj_${language}-${version}.zip" update="True">
<fileset dir="./build" includes="lib/genj_${language}.jar"/>
</zip>
</target>
<!--
Distribution - All languages
-->
<target name="dist.languages" depends="init">
<antcall target="dist.language"><param name="language" value="cs"/></antcall>
<antcall target="dist.language"><param name="language" value="de"/></antcall>
<antcall target="dist.language"><param name="language" value="en"/></antcall>
<antcall target="dist.language"><param name="language" value="es"/></antcall>
<antcall target="dist.language"><param name="language" value="fi"/></antcall>
<antcall target="dist.language"><param name="language" value="fr"/></antcall>
<antcall target="dist.language"><param name="language" value="hu"/></antcall>
<antcall target="dist.language"><param name="language" value="nl"/></antcall>
<antcall target="dist.language"><param name="language" value="pl"/></antcall>
<antcall target="dist.language"><param name="language" value="pt_BR"/></antcall>
<antcall target="dist.language"><param name="language" value="ru"/></antcall>
<antcall target="dist.language"><param name="language" value="sv"/></antcall>
<antcall target="dist.language"><param name="language" value="it"/></antcall>
<antcall target="dist.language"><param name="language" value="no"/></antcall>
</target>
<!--
Distribution - Application
-->
<target name="dist.app" depends="compile, version">
<!-- create genj.jar -->
<delete file="./build/lib/genj.jar"/>
<jar jarfile="./build/lib/genj.jar" update="True">
<fileset dir="./build/classes/contrib" includes="**/*.class"/>
<fileset dir="./build/classes/core" includes="**/*.class"/>
<fileset dir="./build/version"/>
<fileset dir="./images"/>
<fileset dir="./language/en"/>
<fileset dir="./src/core" includes="**/*.properties,**/*.xml,**/*.html,META-INF/**"/>
</jar>
<!-- create run.jar -->
<delete file="./build/lib/run.jar"/>
<jar jarfile="./build/lib/run.jar" update="True">
<fileset dir="./build/classes/launcher" includes="**"/>
<fileset dir="./images" includes="splash.png"/>
<manifest>
<attribute name="Main-Class" value="launcher.Launcher"/>
<attribute name="Launch-Classpath" value="lib, contrib, $${java.home}/lib/tools.jar, $${java.home}/../lib/tools.jar"/>
<attribute name="Launch-Class" value="genj.app.App"/>
<attribute name="Launch-Port" value="2505"/>
<attribute name="Launch-Splash" value="/splash.png"/>
</manifest>
</jar>
<!-- create genj_app-xyz.zip -->
<zip zipfile="./build/dist/genj_app-${version}.zip" update="True">
<!-- some libraries -->
<zipfileset dir="./build/lib" includes="run.jar"/>
<zipfileset dir="./build" includes="lib/genj.jar"/>
<zipfileset dir="." includes="lib/graphj.jar"/>
<zipfileset dir="." includes="lib/jcommon*.jar"/>
<zipfileset dir="." includes="lib/jfreechart*.jar"/>
<zipfileset dir="." includes="lib/spin*.jar"/>
<zipfileset dir="." includes="lib/swingx*.jar"/>
<!-- stuff for reports (classes, sources, scripts)-->
<zipfileset dir="./build/classes" includes="report/**"/>
<!-- sample gedcom file -->
<zipfileset dir="." includes="gedcom/**"/>
<!-- contrib files -->
<zipfileset dir="." includes="contrib/xslt/**"/>
<zipfileset dir="." includes="contrib/fop/**"/>
<zipfileset dir="." includes="contrib/LDS/**"/>
<!-- readme files -->
<zipfileset dir="." includes="doc/*"/>
<!-- start scripts -->
<zipfileset dir="./script" includes="run.*" filemode="755"/>
</zip>
</target>
<!--
Distribution
-->
<target name="dist" depends="init,compile,version,dist.languages,dist.app">
</target>
<!--
Diff to languages' resources
-->
<target name="diff" depends="compile.tst">
<java fork="true" classname="genj.util.ResourcesTest" classpathref="project.class.path">
<arg value="all"/>
</java>
</target>
<!--
Run
-->
<target name="run" depends="compile, version">
<echo level="info">Generating and running GenJ test-run</echo>
<java classname="genj.app.App" fork="true" dir="${basedir}">
<classpath refid="project.class.path"/>
<jvmarg line="${java.jvmargs}"/>
<sysproperty key="genj.gedcom.dir" value="${basedir}/gedcom"/>
<sysproperty key="genj.language.dir" value="${basedir}/language"/>
<sysproperty key="genj.report.dir" value="${basedir}/build/classes/report"/>
</java>
</target>
<!--
Run Applet
-->
<target name="run.applet" depends="compile">
<mkdir dir="./build/run"/>
<!-- create policy file simulating applet security -->
<echo file="./build/run/applet.policy">
grant {
permission java.util.PropertyPermission "user.home", "read";
permission java.io.FilePermission "./build/classes/-", "read";
permission java.io.FilePermission "${basedir}/src/core/-", "read";
permission java.io.FilePermission "${basedir}/images/-", "read";
permission java.io.FilePermission "${basedir}/language/en/-", "read";
permission java.io.FilePermission "${basedir}/gedcom/-", "read";
permission java.lang.RuntimePermission "modifyThread";
permission java.lang.RuntimePermission "modifyThreadGroup";
};
</echo>
<replace file="./build/run/applet.policy" value="\\">
<replacefilter token="\"/>
<replacefilter token="/"/>
</replace>
<!-- create applet.html -->
<echo file="./build/run/applet.html"><![CDATA[
<html><body>
<applet code="genj.applet.Applet.class" width="200" height="200">
<param name="gedcom" value="file:/${basedir}/gedcom/example.ged">
</applet>
</body></html>
]]></echo>
<!-- run appletviewer -->
<concat><filelist dir="./build/run" files="applet.html,applet.policy"/></concat>
<java classname="sun.applet.AppletViewer" fork="true">
<arg value="file:/./build/run/applet.html"/>
<jvmarg value="-Djava.security.policy=./build/run/applet.policy"/>
<classpath refid="project.class.path"/>
</java>
<!-- done -->
</target>
<!--
Information about classpath
-->
<target name="classpath" depends="dist">
<echo level="info">Classpath is: ${project.class.path}</echo>
</target>
<!--
About
-->
<target name="about" depends="version">
<echo level="info">GenJ - Build ${version}</echo>
<echo level="info">Please specify one of the basic options: clean, run or dist</echo>
</target>
</project>