<project name="OpenRocket" basedir=".">
- <property file="build.properties" />
+ <property file="resources/build.properties" />
<property name="src.dir" value="src"/> <!-- Source directory -->
<property name="src-test.dir" value="test"/> <!-- Test directory -->
<path id="test-classpath">
<path refid="classpath"/>
- <pathelement location="${basedir}"/>
+ <pathelement location="${basedir}/resources"/>
<pathelement location="${build-test.dir}"/>
<pathelement location="${classes.dir}"/>
<pathelement location="${src-test.dir}"/>
<fileset dir="lib-test/" includes="*.jar"/>
</path>
-
+
+ <path id="run-classpath">
+ <path refid="classpath"/>
+ <pathelement location="${basedir}/resources"/>
+ <pathelement location="${classes.dir}"/>
+ </path>
+
+ <!-- Add Ant-contrib tasks so we can use for loop -->
+ <taskdef resource="net/sf/antcontrib/antlib.xml">
+ <classpath>
+ <pathelement location="lib-extra/ant-contrib-1.0b3.jar"/>
+ </classpath>
+ </taskdef>
<!-- CLEAN -->
- <target name="clean">
+ <target name="clean" description="Removes all build artifacts">
<delete dir="${build.dir}"/>
<delete dir="tmp/"/>
</target>
<mkdir dir="${classes.dir}"/>
<echo level="info">Compiling main classes</echo>
<javac debug="true" srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
- <echo level="info">Copying build.properties</echo>
- <copy file="build.properties" todir="${dist.dir}"/>
</target>
<!-- JAR -->
- <target name="jar" depends="build">
+ <target name="jar" depends="build" description="Create the OpenRocket jar file">
<copy todir="${dist.dir}/">
- <fileset dir="." includes="LICENSE.TXT README.TXT ChangeLog ReleaseNotes build.properties fileformat.txt" />
- <fileset dir="." includes="datafiles/ pix/ l10n/" />
+ <fileset dir="." includes="LICENSE.TXT README.TXT ChangeLog ReleaseNotes fileformat.txt" />
+ <fileset dir="resources/"/>
<fileset dir="src/" includes="META-INF/" />
</copy>
<mkdir dir="${jar.dir}"/>
<zipfileset src="lib/jcommon-1.0.16.jar" />
<zipfileset src="lib/jfreechart-1.0.13.jar" />
<zipfileset src="lib/iText-5.0.2.jar" />
+ <zipfileset src="lib/opencsv-2.3.jar" />
+ <zipfileset src="lib/exp4j-0.2.9.jar" />
</jar>
</target>
-
+
+ <!-- CONVERT vendor csv to ORC files -->
+ <macrodef name="build-orc-file">
+ <attribute name="dir"/>
+ <attribute name="vendor"/>
+ <sequential>
+ <echo>Generating ORC file for vendor @{vendor}</echo>
+ <java classname="net.sf.openrocket.preset.loader.RocksimComponentFileTranslator"
+ fork="true"
+ classpathref="run-classpath"
+ failonerror="true">
+ <arg value="@{dir}"/>
+ <arg value="resources/datafiles/presets/@{vendor}.orc"/>
+ </java>
+ </sequential>
+ </macrodef>
+
+ <target name="generate-orc-files"
+ description="Generate ORC file from vendor csv"
+ depends="build">
+
+ <for param="vendor-dir">
+ <dirset dir="resources-src/datafiles/rocksim_components"
+ includes="*"/>
+ <sequential>
+ <propertyregex property="vendor"
+ override="true"
+ input="@{vendor-dir}"
+ select="\1"
+ regexp=".*[/\\]([^/\\]*)$"/>
+ <build-orc-file dir="@{vendor-dir}" vendor="${vendor}"/>
+ </sequential>
+ </for>
+ </target>
<!-- DIST-SRC -->
<target name="dist-src">
<fileset dir="." includes="*" excludes="*.log">
<type type="file"/>
</fileset>
- <fileset dir="." includes="datafiles/ lib/ lib-test/ pix/ src/ test/ l10n/"/>
+ <fileset dir="." includes="resources/ lib/ lib-test/ src/ test/"/>
</copy>
<zip destfile="${dist.src}" basedir="${build.dir}" includes="${pkgname}/"/>
<delete dir="${build.dir}/${pkgname}"/>
</echo>
</target>
-</project>
\ No newline at end of file
+</project>