xref: /aoo42x/main/scripting/java/build.xml (revision cdf0e10c)
1*cdf0e10cSrcweir<!--
2*cdf0e10cSrcweir
3*cdf0e10cSrcweir  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir
5*cdf0e10cSrcweir  Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir
7*cdf0e10cSrcweir  OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir
9*cdf0e10cSrcweir  This file is part of OpenOffice.org.
10*cdf0e10cSrcweir
11*cdf0e10cSrcweir  OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir  it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir  only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir
15*cdf0e10cSrcweir  OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir  but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir  GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir  (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir
21*cdf0e10cSrcweir  You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir  version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir  <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir  for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir
26*cdf0e10cSrcweir-->
27*cdf0e10cSrcweir<project name="Scipting Framework" default="all" basedir=".">
28*cdf0e10cSrcweir
29*cdf0e10cSrcweir  <!-- =================== Environmental Properties ======================= -->
30*cdf0e10cSrcweir
31*cdf0e10cSrcweir  <property name="prj" value=".."/>
32*cdf0e10cSrcweir  <property name="build.compiler"   value="classic"/>
33*cdf0e10cSrcweir  <property name="optimize"   value="off"/>
34*cdf0e10cSrcweir  <property name="debug"   value="on"/>
35*cdf0e10cSrcweir  <property name="jardir" value="${out}/class"/>
36*cdf0e10cSrcweir  <property name="bindir" value="${out}/bin"/>
37*cdf0e10cSrcweir  <property name="idesupport.dir" value="org/openoffice/idesupport"/>
38*cdf0e10cSrcweir  <property name="netbeans.dir" value="org/openoffice/netbeans/modules/office"/>
39*cdf0e10cSrcweir  <property name="framework.dir" value="Framework/com/sun/star/script/framework/security"/>
40*cdf0e10cSrcweir
41*cdf0e10cSrcweir  <!-- Change this property if you are building NetBeans editor support jar.
42*cdf0e10cSrcweir       Not needed in default build -->
43*cdf0e10cSrcweir  <property name="netbeans.install.path" value="/export/home/netbeans"/>
44*cdf0e10cSrcweir
45*cdf0e10cSrcweir  <property environment="env"/>
46*cdf0e10cSrcweir  <property name="env.BSH_JAR" value="${solar.jar}/bsh.jar"/>
47*cdf0e10cSrcweir
48*cdf0e10cSrcweir  <!-- ==================== classpath setting ============================ -->
49*cdf0e10cSrcweir  <path id="idlclasspath">
50*cdf0e10cSrcweir    <pathelement location="${solar.jar}/jurt.jar"/>
51*cdf0e10cSrcweir    <pathelement location="${solar.jar}/unoil.jar"/>
52*cdf0e10cSrcweir    <pathelement location="${solar.jar}/juh.jar"/>
53*cdf0e10cSrcweir    <pathelement location="${solar.jar}/java_uno.jar"/>
54*cdf0e10cSrcweir    <pathelement location="${solar.jar}/ridl.jar"/>
55*cdf0e10cSrcweir    <pathelement location="${env.BSH_JAR}"/>
56*cdf0e10cSrcweir    <pathelement location="${solar.jar}/js.jar"/>
57*cdf0e10cSrcweir    <pathelement location="${jardir}"/>
58*cdf0e10cSrcweir  </path>
59*cdf0e10cSrcweir
60*cdf0e10cSrcweir  <path id="idesupport.class.path">
61*cdf0e10cSrcweir    <pathelement path="${jardir}"/>
62*cdf0e10cSrcweir  </path>
63*cdf0e10cSrcweir
64*cdf0e10cSrcweir  <path id="openide.class.path">
65*cdf0e10cSrcweir    <pathelement path="${jardir}"/>
66*cdf0e10cSrcweir    <pathelement path="${solar.jar}/openide.jar"/>
67*cdf0e10cSrcweir  </path>
68*cdf0e10cSrcweir
69*cdf0e10cSrcweir  <path id="netbeans.editor.support.classpath">
70*cdf0e10cSrcweir    <pathelement path="${jardir}"/>
71*cdf0e10cSrcweir    <pathelement path="${netbeans.install.path}/modules/ext/nb-editor.jar"/>
72*cdf0e10cSrcweir  </path>
73*cdf0e10cSrcweir
74*cdf0e10cSrcweir  <condition property="boot_refID" value="macPath" else="nonMacPath">
75*cdf0e10cSrcweir    <and>
76*cdf0e10cSrcweir      <os family="mac"/>
77*cdf0e10cSrcweir      <os family="unix"/>
78*cdf0e10cSrcweir    </and>
79*cdf0e10cSrcweir  </condition>
80*cdf0e10cSrcweir  <path id="macPath" location="${java.home}/../Classes/classes.jar"/>
81*cdf0e10cSrcweir  <!-- rhino.jar from OpenJDK breaks build -->
82*cdf0e10cSrcweir  <path id="nonMacPath">
83*cdf0e10cSrcweir    <fileset dir="${java.home}/">
84*cdf0e10cSrcweir       <include name="jre/lib/*.jar"/>
85*cdf0e10cSrcweir       <include name="lib/*.jar"/>
86*cdf0e10cSrcweir       <exclude name="jre/lib/rhino.jar"/>
87*cdf0e10cSrcweir       <exclude name="lib/rhino.jar"/>
88*cdf0e10cSrcweir     </fileset>
89*cdf0e10cSrcweir  </path>
90*cdf0e10cSrcweir  <path id="my.bootstrap.classpath" refID="${boot_refID}"/>
91*cdf0e10cSrcweir
92*cdf0e10cSrcweir  <!-- ===================== Prepare Directories ========================= -->
93*cdf0e10cSrcweir  <target name="prepare">
94*cdf0e10cSrcweir    <mkdir dir="${jardir}"/>
95*cdf0e10cSrcweir  </target>
96*cdf0e10cSrcweir
97*cdf0e10cSrcweir  <!-- ======================== Compile Classes ========================== -->
98*cdf0e10cSrcweir  <target name="compile" depends="prepare">
99*cdf0e10cSrcweir    <javac srcdir="com" destdir="${jardir}"
100*cdf0e10cSrcweir         includes="**/*.java" classpathref="idlclasspath"
101*cdf0e10cSrcweir         debug="${debug}" optimize="${optimize}" deprecation="off">
102*cdf0e10cSrcweir      <compilerarg value="-Xbootclasspath:${toString:my.bootstrap.classpath}"/>
103*cdf0e10cSrcweir    </javac>
104*cdf0e10cSrcweir    <javac srcdir="Framework/" destdir="${jardir}"
105*cdf0e10cSrcweir         includes="**/*.java" classpathref="idlclasspath" debug="${debug}"
106*cdf0e10cSrcweir         optimize="${optimize}" deprecation="off">
107*cdf0e10cSrcweir     <compilerarg value="-Xbootclasspath:${toString:my.bootstrap.classpath}"/>
108*cdf0e10cSrcweir    </javac>
109*cdf0e10cSrcweir  </target>
110*cdf0e10cSrcweir
111*cdf0e10cSrcweir  <target name="idesupport.compile" depends="compile, prepare">
112*cdf0e10cSrcweir    <javac srcdir="." destdir="${jardir}"
113*cdf0e10cSrcweir           debug="${debug}" deprecation="on">
114*cdf0e10cSrcweir      <classpath refid="idesupport.class.path"/>
115*cdf0e10cSrcweir      <exclude name="${idesupport.dir}/**/.*/*"/>
116*cdf0e10cSrcweir      <exclude name="${idesupport.dir}/localoffice/**/*"/>
117*cdf0e10cSrcweir      <exclude name="${idesupport.dir}/LocalOffice.java"/>
118*cdf0e10cSrcweir      <include name="${idesupport.dir}/*.java"/>
119*cdf0e10cSrcweir      <include name="${idesupport.dir}/*/*.java"/>
120*cdf0e10cSrcweir    </javac>
121*cdf0e10cSrcweir  </target>
122*cdf0e10cSrcweir
123*cdf0e10cSrcweir  <target name="localoffice.compile" depends="prepare">
124*cdf0e10cSrcweir    <javac srcdir="." destdir="${jardir}"
125*cdf0e10cSrcweir           debug="${debug}" deprecation="on">
126*cdf0e10cSrcweir      <classpath refid="idlclasspath"/>
127*cdf0e10cSrcweir      <exclude name="${idesupport.dir}/localoffice/.*/*"/>
128*cdf0e10cSrcweir      <include name="${idesupport.dir}/localoffice/*.java"/>
129*cdf0e10cSrcweir    </javac>
130*cdf0e10cSrcweir  </target>
131*cdf0e10cSrcweir
132*cdf0e10cSrcweir  <target name="netbeans.compile" depends="idesupport.compile, prepare">
133*cdf0e10cSrcweir    <javac srcdir="." destdir="${jardir}"
134*cdf0e10cSrcweir           debug="${debug}" deprecation="on">
135*cdf0e10cSrcweir      <classpath refid="openide.class.path"/>
136*cdf0e10cSrcweir      <exclude name="${netbeans.dir}/**/.*/*"/>
137*cdf0e10cSrcweir      <include name="${netbeans.dir}/**/*.java"/>
138*cdf0e10cSrcweir    </javac>
139*cdf0e10cSrcweir  </target>
140*cdf0e10cSrcweir
141*cdf0e10cSrcweir  <target name="netbeans.editor.support" depends="prepare">
142*cdf0e10cSrcweir    <javac srcdir="." destdir="${jardir}"
143*cdf0e10cSrcweir           debug="${debug}" deprecation="on">
144*cdf0e10cSrcweir      <classpath refid="netbeans.editor.support.classpath"/>
145*cdf0e10cSrcweir      <include name="org/openoffice/netbeans/editor/*.java"/>
146*cdf0e10cSrcweir    </javac>
147*cdf0e10cSrcweir    <jar jarfile="${jardir}/nb-editorsupport.jar">
148*cdf0e10cSrcweir      <fileset dir="${jardir}">
149*cdf0e10cSrcweir          <include name="org/openoffice/netbeans/editor/*.class"/>
150*cdf0e10cSrcweir      </fileset>
151*cdf0e10cSrcweir      <fileset dir=".">
152*cdf0e10cSrcweir        <include name="org/openoffice/netbeans/editor/OOo.jcs"/>
153*cdf0e10cSrcweir        <include name="org/openoffice/netbeans/editor/OOo.jcb"/>
154*cdf0e10cSrcweir      </fileset>
155*cdf0e10cSrcweir    </jar>
156*cdf0e10cSrcweir  </target>
157*cdf0e10cSrcweir
158*cdf0e10cSrcweir  <!-- ===================== jar ========================= -->
159*cdf0e10cSrcweir  <target name="jar" depends="compile">
160*cdf0e10cSrcweir    <jar jarfile="${jardir}/ScriptProviderForJava.jar"
161*cdf0e10cSrcweir         basedir="${jardir}">
162*cdf0e10cSrcweir        <manifest>
163*cdf0e10cSrcweir            <attribute name="Built-By" value="Sun Microsystems"/>
164*cdf0e10cSrcweir            <attribute name="RegistrationClassName"
165*cdf0e10cSrcweir                       value="com.sun.star.script.framework.provider.java.ScriptProviderForJava"/>
166*cdf0e10cSrcweir            <attribute name="Class-Path" value="ScriptFramework.jar"/>
167*cdf0e10cSrcweir            <attribute name="UNO-Type-Path" value=""/>
168*cdf0e10cSrcweir        </manifest>
169*cdf0e10cSrcweir        <include name="**/provider/java/*.class"/>
170*cdf0e10cSrcweir    </jar>
171*cdf0e10cSrcweir
172*cdf0e10cSrcweir    <jar jarfile="${jardir}/ScriptProviderForBeanShell.jar"
173*cdf0e10cSrcweir         basedir="${jardir}">
174*cdf0e10cSrcweir        <manifest>
175*cdf0e10cSrcweir            <attribute name="Built-By" value="Sun Microsystems"/>
176*cdf0e10cSrcweir            <attribute name="RegistrationClassName"
177*cdf0e10cSrcweir                       value="com.sun.star.script.framework.provider.beanshell.ScriptProviderForBeanShell"/>
178*cdf0e10cSrcweir            <attribute name="Class-Path" value="ScriptFramework.jar bsh.jar"/>
179*cdf0e10cSrcweir            <attribute name="UNO-Type-Path" value=""/>
180*cdf0e10cSrcweir        </manifest>
181*cdf0e10cSrcweir        <include name="**/provider/beanshell/*.class"/>
182*cdf0e10cSrcweir        <fileset dir=".">
183*cdf0e10cSrcweir          <include name="**/provider/beanshell/*.bsh"/>
184*cdf0e10cSrcweir        </fileset>
185*cdf0e10cSrcweir    </jar>
186*cdf0e10cSrcweir
187*cdf0e10cSrcweir    <jar jarfile="${jardir}/ScriptProviderForJavaScript.jar"
188*cdf0e10cSrcweir         basedir="${jardir}">
189*cdf0e10cSrcweir        <manifest>
190*cdf0e10cSrcweir            <attribute name="Built-By" value="Sun Microsystems"/>
191*cdf0e10cSrcweir            <attribute name="RegistrationClassName"
192*cdf0e10cSrcweir                       value="com.sun.star.script.framework.provider.javascript.ScriptProviderForJavaScript"/>
193*cdf0e10cSrcweir            <attribute name="Class-Path" value="ScriptFramework.jar js.jar"/>
194*cdf0e10cSrcweir            <attribute name="UNO-Type-Path" value=""/>
195*cdf0e10cSrcweir        </manifest>
196*cdf0e10cSrcweir        <include name="**/provider/javascript/*.class"/>
197*cdf0e10cSrcweir        <fileset dir=".">
198*cdf0e10cSrcweir          <include name="**/provider/javascript/*.js"/>
199*cdf0e10cSrcweir        </fileset>
200*cdf0e10cSrcweir    </jar>
201*cdf0e10cSrcweir
202*cdf0e10cSrcweir    <jar jarfile="${jardir}/ScriptFramework.jar"
203*cdf0e10cSrcweir         basedir="${jardir}">
204*cdf0e10cSrcweir        <manifest>
205*cdf0e10cSrcweir            <attribute name="Built-By" value="Sun Microsystems"/>
206*cdf0e10cSrcweir            <attribute name="RegistrationClassName"
207*cdf0e10cSrcweir                       value="com.sun.star.script.framework.security.SecurityDialog"/>
208*cdf0e10cSrcweir            <attribute name="UNO-Type-Path" value=""/>
209*cdf0e10cSrcweir        </manifest>
210*cdf0e10cSrcweir        <include name="**/security/*"/>
211*cdf0e10cSrcweir        <include name="**/log/*.class"/>
212*cdf0e10cSrcweir        <include name="**/provider/*.class"/>
213*cdf0e10cSrcweir        <include name="**/browse/*.class"/>
214*cdf0e10cSrcweir        <include name="**/container/*.class"/>
215*cdf0e10cSrcweir        <include name="**/io/*.class"/>
216*cdf0e10cSrcweir    </jar>
217*cdf0e10cSrcweir
218*cdf0e10cSrcweir  </target>
219*cdf0e10cSrcweir
220*cdf0e10cSrcweir  <target name="idesupport.jar" depends="idesupport.compile">
221*cdf0e10cSrcweir    <jar jarfile="${jardir}/idesupport.jar">
222*cdf0e10cSrcweir      <fileset dir="${jardir}">
223*cdf0e10cSrcweir          <include name="${idesupport.dir}/**/*.class"/>
224*cdf0e10cSrcweir          <include name="CommandLineTools*"/>
225*cdf0e10cSrcweir          <exclude name="${idesupport.dir}/localoffice/*.class"/>
226*cdf0e10cSrcweir      </fileset>
227*cdf0e10cSrcweir      <fileset dir=".">
228*cdf0e10cSrcweir        <include name="${idesupport.dir}/ui/add.gif"/>
229*cdf0e10cSrcweir      </fileset>
230*cdf0e10cSrcweir    </jar>
231*cdf0e10cSrcweir  </target>
232*cdf0e10cSrcweir
233*cdf0e10cSrcweir  <target name="localoffice.jar" depends="localoffice.compile">
234*cdf0e10cSrcweir    <unjar
235*cdf0e10cSrcweir      src="${solar.jar}/unoil.jar"
236*cdf0e10cSrcweir      dest="${jardir}"/>
237*cdf0e10cSrcweir    <jar jarfile="${jardir}/localoffice.jar">
238*cdf0e10cSrcweir      <fileset dir="${jardir}">
239*cdf0e10cSrcweir        <include name="${idesupport.dir}/localoffice/*.class"/>
240*cdf0e10cSrcweir        <include name="drafts/com/sun/star/script/framework/storage/*.class"/>
241*cdf0e10cSrcweir      </fileset>
242*cdf0e10cSrcweir    </jar>
243*cdf0e10cSrcweir  </target>
244*cdf0e10cSrcweir
245*cdf0e10cSrcweir  <target name="netbeans.jar" depends="netbeans.compile">
246*cdf0e10cSrcweir    <jar jarfile="${jardir}/office.jar" manifest="manifest.mf">
247*cdf0e10cSrcweir      <fileset dir="${jardir}">
248*cdf0e10cSrcweir        <include name="${netbeans.dir}/**/*.class"/>
249*cdf0e10cSrcweir        <exclude name="${netbeans.dir}/**/ParcelDescriptorChildren.class"/>
250*cdf0e10cSrcweir        <exclude name="${netbeans.dir}/**/ScriptNode.class"/>
251*cdf0e10cSrcweir        <include name="${idesupport.dir}/**/*.class"/>
252*cdf0e10cSrcweir        <include name="CommandLineTools*"/>
253*cdf0e10cSrcweir      </fileset>
254*cdf0e10cSrcweir      <fileset dir=".">
255*cdf0e10cSrcweir        <include name="${idesupport.dir}/ui/add.gif"/>
256*cdf0e10cSrcweir        <include name="${netbeans.dir}/resources/*"/>
257*cdf0e10cSrcweir        <include name="${netbeans.dir}/resources/templates/*"/>
258*cdf0e10cSrcweir        <include name="${netbeans.dir}/**/Bundle*"/>
259*cdf0e10cSrcweir      </fileset>
260*cdf0e10cSrcweir    </jar>
261*cdf0e10cSrcweir  </target>
262*cdf0e10cSrcweir
263*cdf0e10cSrcweir  <!-- Uncomment this target when building within NetBeans to reinstall the
264*cdf0e10cSrcweir       module.
265*cdf0e10cSrcweir  <target name="netbeans.install" depends="netbeans.package">
266*cdf0e10cSrcweir    <copy file="${jardir}/localoffice.jar"
267*cdf0e10cSrcweir          tofile="${netbeans.home}/modules/ext/localoffice.jar"/>
268*cdf0e10cSrcweir    <nbinstaller action="reinstall" module="${jardir}/office.jar"/>
269*cdf0e10cSrcweir  </target>
270*cdf0e10cSrcweir  -->
271*cdf0e10cSrcweir
272*cdf0e10cSrcweir  <!-- ====================== Clean Generated Files ===================== -->
273*cdf0e10cSrcweir  <target name="clean">
274*cdf0e10cSrcweir    <delete file="${jardir}/ScriptProviderForJava.jar"/>
275*cdf0e10cSrcweir    <delete file="${jardir}/ScriptProviderForJavaScript.jar"/>
276*cdf0e10cSrcweir    <delete file="${jardir}/ScriptProviderForBeanShell.jar"/>
277*cdf0e10cSrcweir    <delete file="${jardir}/ScriptFramework.jar"/>
278*cdf0e10cSrcweir    <delete file="${jardir}/office.jar"/>
279*cdf0e10cSrcweir    <delete file="${jardir}/localoffice.jar"/>
280*cdf0e10cSrcweir    <delete file="${jardir}/idesupport.jar"/>
281*cdf0e10cSrcweir  </target>
282*cdf0e10cSrcweir
283*cdf0e10cSrcweir  <!-- ========================= All In One Build ======================= -->
284*cdf0e10cSrcweir  <target name="all" depends="jar"/>
285*cdf0e10cSrcweir</project>
286