source: trunk/build.xml @ 169

Revision 169, 4.8 KB checked in by jlee, 3 years ago (diff)

Update SWT

Line 
1<?xml version="1.0"?>
2<project name="iriverter" default="jar" basedir=".">
3        <property name="package" value="org/thestaticvoid/iriverter" />
4        <property name="mplayer.package" value="hu/mplayerhq" />
5        <property name="main.class" value="${package}/ConverterUI" />
6        <property name="src.dir" value="src" />
7        <property name="web.dir" value="web" />
8        <property name="build.dir" value="build" />
9        <property name="jar.dir" value="jar" />
10        <property name="dist.dir" value="dist" />
11        <property name="swt.linux.x86.dir" value="lib/swt-3.4-gtk-linux-x86" />
12        <property name="swt.linux.x86_64.dir" value="lib/swt-3.4-gtk-linux-x86_64" />
13        <property name="swt.osx.dir" value="lib/swt-3.4-carbon-macosx" />
14        <property name="swt.windows.dir" value="lib/swt-3.4-win32-win32-x86" />
15        <property name="icons.dir" value="${package}/icons" />
16        <property name="resources.zip.file" value="${build.dir}/${package}/resources.zip" />
17        <property name="doc.dir" value="doc" />
18        <property name="doc.images.dir" value="${doc.dir}/images" />
19        <property name="docbook.dir" value="lib/docbook-xsl-1.71.1" />
20        <property name="docbook.images.dir" value="${docbook.dir}/images" />
21        <property name="xslt.style" value="${docbook.dir}/html/chunk.xsl" />
22        <property name="xalan.dir" value="lib/xalan-j_2_7_0" />
23
24        <condition property="swt.dir" value="${swt.linux.x86.dir}">
25                <os name="Linux" arch="i386" />
26        </condition>
27       
28        <condition property="swt.dir" value="${swt.linux.x86_64.dir}">
29                <os name="Linux" arch="amd64" />
30        </condition>
31
32        <condition property="swt.dir" value="${swt.osx.dir}">
33                <os name="Mac OS X" />
34        </condition>
35
36        <condition property="swt.dir" value="${swt.windows.dir}">
37                <os family="windows" />
38        </condition>
39       
40        <target name="compile">
41                <mkdir dir="${build.dir}" />
42                <javac srcdir="${src.dir}" destdir="${build.dir}" classpath="${swt.dir}/swt.jar" source="1.4" target="1.4" />
43        </target>
44
45        <target name="doc">
46                <mkdir dir="${doc.dir}" />
47
48                <xslt basedir="${src.dir}/${package}/${doc.dir}" destdir="${doc.dir}" includes="index.xml" style="${xslt.style}">
49                        <classpath>
50                                <fileset dir="${xalan.dir}" includes="*.jar" />
51                        </classpath>
52                        <param name="use.id.as.filename" expression="1" />
53                        <param name="id.warnings" expression="0" />
54                        <param name="chunk.quietly" expression="1" />
55                        <param name="admon.graphics" expression="1" />
56                </xslt>
57               
58                <copy todir="${doc.images.dir}">
59                        <fileset dir="${src.dir}/${package}/${doc.images.dir}" />
60                        <fileset dir="${docbook.images.dir}" />
61                </copy>
62        </target>
63
64        <target name="resources" depends="doc">
65                <zip destfile="${resources.zip.file}">
66                        <fileset dir="${src.dir}/${package}" includes="profiles/**" />
67                        <fileset dir="${basedir}" includes="${doc.dir}/**" />
68                </zip>
69
70                <copy todir="${build.dir}/${icons.dir}">
71                        <fileset dir="${src.dir}/${icons.dir}" />
72                </copy>
73        </target>
74
75        <target name="jar" depends="compile,resources">
76                <mkdir dir="${jar.dir}" />
77                <jar destfile="${jar.dir}/iriverter.jar" basedir="${build.dir}" includes="${package}/**" />
78        </target>
79
80        <target name="mplayer">
81                <mkdir dir="${build.dir}/${mplayer.package}/win32" />
82                <mkdir dir="${build.dir}/${mplayer.package}/codecs" />
83               
84                <get src="http://www4.mplayerhq.hu/MPlayer/releases/win32/MPlayer-mingw32-1.0rc2.zip" dest="${build.dir}/${mplayer.package}/win32/MPlayer-mingw32-1.0rc2.zip" usetimestamp="true" />
85                <get src="http://www4.mplayerhq.hu/MPlayer/releases/codecs/windows-all-20071007.zip" dest="${build.dir}/${mplayer.package}/codecs/windows-all-20071007.zip" usetimestamp="true" />
86       
87                <jar destfile="${jar.dir}/mplayer-win32.jar" basedir="${build.dir}" includes="${mplayer.package}/win32/**" />
88                <jar destfile="${jar.dir}/codecs-win32.jar" basedir="${build.dir}" includes="${mplayer.package}/codecs/**" />
89        </target>
90
91        <target name="dist" depends="jar,mplayer">
92                <mkdir dir="${dist.dir}" />
93       
94                <copy file="${swt.linux.x86.dir}/swt.jar" tofile="${dist.dir}/swt-gtk-linux-x86.jar" />
95                <copy file="${swt.linux.x86_64.dir}/swt.jar" tofile="${dist.dir}/swt-gtk-linux-x86_64.jar" />
96                <copy file="${swt.osx.dir}/swt.jar" tofile="${dist.dir}/swt-carbon-macosx.jar" />
97                <copy file="${swt.windows.dir}/swt.jar" tofile="${dist.dir}/swt-win32-win32-x86.jar" />
98               
99                <copy todir="${dist.dir}">
100                        <fileset dir="${jar.dir}" includes="*.jar" />
101                        <fileset dir="${web.dir}" />
102                        <fileset dir="${basedir}" includes="${doc.dir}/**" />
103                </copy>
104
105                <signjar keystore="keystore" alias="iriverter" storepass="iriverter">
106                        <fileset dir="${dist.dir}" includes="*.jar" />
107                </signjar>
108        </target>
109
110        <target name="run" depends="resources">
111                <java classname="${main.class}" fork="true">
112                        <classpath>
113                                <pathelement path="${build.dir}" />
114                                <pathelement location="${swt.dir}/swt.jar" />
115                        </classpath>
116                </java>
117        </target>
118
119        <target name="clean">
120                <delete dir="${build.dir}" />
121                <delete dir="${doc.dir}" />
122                <delete dir="${jar.dir}" />
123                <delete dir="${dist.dir}" />
124        </target>
125</project>
Note: See TracBrowser for help on using the repository browser.