117 lines
3.5 KiB
XML
117 lines
3.5 KiB
XML
|
|
<?xml version="1.0"?>
|
||
|
|
<project name="sample" default="main" basedir=".">
|
||
|
|
<property file="version.properties"/>
|
||
|
|
|
||
|
|
<!-- find libs -->
|
||
|
|
<import file="build-libs.xml"/>
|
||
|
|
|
||
|
|
<!-- main java class -->
|
||
|
|
<property name="java.dir" value="examples/jse"/>
|
||
|
|
<property name="java.name" value="SampleApplet"/>
|
||
|
|
|
||
|
|
<!-- main script -->
|
||
|
|
<property name="script.dir" value="examples/lua"/>
|
||
|
|
<property name="script.name" value="swingapplet"/>
|
||
|
|
<property name="image.name" value="logo.gif"/>
|
||
|
|
|
||
|
|
<!-- location of luaj jar -->
|
||
|
|
<property name="libs.dir" value="lib"/>
|
||
|
|
<property name="luaj.jar" value="${libs.dir}/luaj-jse-${version}.jar"/>
|
||
|
|
|
||
|
|
<!-- location of build results -->
|
||
|
|
<property name="build.dir" value="build/applet"/>
|
||
|
|
|
||
|
|
<target name="clean">
|
||
|
|
<delete failonerror="false" dir="${build.dir}"/>
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="dirs">
|
||
|
|
<mkdir dir="build/applet/classes"/>
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="classes" depends="dirs">
|
||
|
|
<copy todir="${build.dir}">
|
||
|
|
<fileset dir="${script.dir}" includes="${script.name}.lua,${image.name}"/>
|
||
|
|
</copy>
|
||
|
|
<javac destdir="${build.dir}/classes" source="1.4" target="1.4"
|
||
|
|
classpath="${luaj.jar}" srcdir="${java.dir}" includes="${java.name}.java"/>
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="manifest" depends="dirs">
|
||
|
|
<manifest file="${build.dir}/MANIFEST.MF">
|
||
|
|
<attribute name="Permissions" value="sandbox"/>
|
||
|
|
<attribute name="Main-class" value="${java.name}"/>
|
||
|
|
</manifest>
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="jar" depends="classes,manifest">
|
||
|
|
<jar destfile="${build.dir}/${script.name}.jar"
|
||
|
|
manifest="${build.dir}/MANIFEST.MF">
|
||
|
|
<fileset dir="${build.dir}" includes="*.lua"/>
|
||
|
|
<fileset dir="${build.dir}/classes"/>
|
||
|
|
<zipfileset
|
||
|
|
src="${luaj.jar}"
|
||
|
|
excludes="**/script/*,**/luajc/**,**/parser/**,**/ast/**,lua*"/>
|
||
|
|
</jar>
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="obf" depends="jar,proguard-lib">
|
||
|
|
<taskdef resource="proguard/ant/task.properties" classpath="lib/proguard.jar" />
|
||
|
|
<copy file="${build.dir}/${script.name}.jar"
|
||
|
|
tofile="${build.dir}/${script.name}-unobfuscated.jar"/>
|
||
|
|
<proguard>
|
||
|
|
-injars ${build.dir}/${script.name}-unobfuscated.jar
|
||
|
|
-outjars ${build.dir}/${script.name}.jar
|
||
|
|
-libraryjars ${java.home}/lib/rt.jar
|
||
|
|
-overloadaggressively
|
||
|
|
-repackageclasses ''
|
||
|
|
-allowaccessmodification
|
||
|
|
-printmapping ${build.dir}/mapping.txt
|
||
|
|
|
||
|
|
-keep public class * extends java.applet.Applet
|
||
|
|
|
||
|
|
-target 1.4
|
||
|
|
</proguard>
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="sign" depends="jar">
|
||
|
|
<signjar jar="${build.dir}/${script.name}.jar"
|
||
|
|
alias="${sign.alias}"
|
||
|
|
storepass="${sign.storepass}"
|
||
|
|
keypass="${sign.keypass}"
|
||
|
|
keystore="${sign.keystore}" />
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="html" depends="dirs">
|
||
|
|
<echoxml file="build/applet/LuajSampleApplet.html">
|
||
|
|
<html>
|
||
|
|
<head><title>Luaj Sample Applet</title></head>
|
||
|
|
<body>
|
||
|
|
<h1>Luaj Sample Applet</h1>
|
||
|
|
Requires browser that supports applets.
|
||
|
|
${script.name}
|
||
|
|
<applet archive='${script.name}.jar'
|
||
|
|
code='${java.name}.class'
|
||
|
|
width='640'
|
||
|
|
height='480' >
|
||
|
|
<param name='luaj.script' value='${script.name}.lua'/>
|
||
|
|
<param name="java_version" value="1.4+"/>
|
||
|
|
</applet>
|
||
|
|
</body>
|
||
|
|
</html>
|
||
|
|
</echoxml>
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="run" depends="jar,html">
|
||
|
|
<exec executable="open" spawn="true">
|
||
|
|
<arg value="-a Firefox"/>
|
||
|
|
<arg path="build/applet/LuajSampleApplet.html"/>
|
||
|
|
</exec>
|
||
|
|
</target>
|
||
|
|
|
||
|
|
<target name="all" depends="clean,sign,html,run"/>
|
||
|
|
|
||
|
|
<target name="main" depends="sign,html"/>
|
||
|
|
|
||
|
|
</project>
|