This repository has been archived on 2026-05-27. You can view files and clone it, but cannot push or open issues or pull requests.
HELYX-OS-Personal/build_src.xml
HELYX-OS Development Team b658f2e87f v240
2016-11-22 16:51:15 +01:00

87 lines
3.3 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project default="dist" name="Create Jar for HELYX-OS">
<property name="component.name" value="HELYX-OS" />
<property name="component.vendor" value="Engys" />
<property name="component.mail" value="info@engys.com" />
<property name="component.site" value="http://engys.github.io/HELYX-OS/" />
<property name="component.copyright" value="Copyright © ENGYS Ltd 2016. All rights reserved." />
<property name="component.launcher" value="eu.engys.launcher.Launcher" />
<property name="component.version" value="2.4.0" />
<property name="jar.name" value="${component.name}.jar" />
<property name="src.dir" value="src" />
<property name="build.dir" value="build" />
<property name="lib.dir" value="lib" />
<path id="build.path">
<fileset dir="${lib.dir}">
<include name="**/*.jar" />
</fileset>
</path>
<target name="init">
<mkdir dir="${build.dir}" />
</target>
<target name="compile" depends="init">
<javac debug="true" destdir="${build.dir}" target="1.7" source="1.7" verbose="false" srcdir="${src.dir}" includeantruntime="false" includejavaruntime="yes">
<include name="eu/engys/**/*.java" />
<classpath refid="build.path" />
</javac>
<copy todir="${build.dir}">
<fileset dir="${src.dir}" includes="**/resources/**/*, **/*.png, **/*.jpeg, **/*.jpg, **/*.gif, **/*.properties" />
</copy>
<touch file="${build.dir}/eu/engys/resources/version.properties" />
<propertyfile file="${build.dir}/eu/engys/resources/version.properties">
<entry key="name" value="${component.name}" />
<entry key="vendor" value="${component.vendor}" />
<entry key="version" value="${component.version}" />
<entry key="mail" value="${component.mail}" />
<entry key="site" value="${component.site}" />
<entry key="copyright" value="${component.copyright}" />
<entry key="build" type="date" value="now" pattern="yyyy-MM-dd" />
</propertyfile>
</target>
<target name="dist" depends="compile" description="">
<pathconvert property="main.class.path" pathsep=" ">
<path refid="build.path" />
<mapper>
<chainedmapper>
<flattenmapper />
</chainedmapper>
</mapper>
</pathconvert>
<tstamp>
<format property="TODAY" pattern="yyyy-MM-dd" />
</tstamp>
<!-- create the jar -->
<jar jarfile="${lib.dir}/${jar.name}" basedir="${build.dir}">
<!-- define MANIFEST.MF -->
<manifest>
<attribute name="Built-By" value="${user.name}" />
<attribute name="Main-Class" value="${component.launcher}" />
<attribute name="Specification-Title" value="${component.name}" />
<attribute name="Specification-Version" value="${component.version}" />
<attribute name="Specification-Vendor" value="${component.vendor}" />
<attribute name="Implementation-Title" value="${component.name}" />
<attribute name="Implementation-Version" value="${component.version} ${TODAY}" />
<attribute name="Implementation-Vendor" value="${component.vendor}" />
<attribute name="Class-Path" value="${main.class.path}" />
<attribute name="SplashScreen-Image" value="${component.name}.png" />
</manifest>
</jar>
</target>
<target name="clean">
<delete dir="${build.dir}" />
<delete quiet="true">
<fileset dir="${src.dir}" includes="**/*.class" />
</delete>
</target>
</project>