| <!--*********************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| ***********************************************************--> |
| |
| |
| <project name="Scipting Framework Installer" default="jar" basedir="."> |
| |
| <!-- =================== Environmental Properties ======================= --> |
| |
| <property name="prj" value=".."/> |
| <property file="${prj}/java/build.env"/> |
| <property name="build.compiler" value="modern"/> |
| <property name="optimize" value="on"/> |
| <property name="debug" value="on"/> |
| <property name="installerclasses" value="${out}/class/sframeworkinstall"/> |
| <property name="jardir" value="${out}/class"/> |
| <property name="bindir" value="${out}/bin"/> |
| <property name="sfversion" value="0.3"/> |
| <property name="installerjarname" value="SFrameworkInstall.jar"/> |
| <property environment="env"/> |
| |
| <!-- ==================== classpath setting ============================ --> |
| <path id="idlclasspath"> |
| <pathelement location="${solar.jar}/unoil.jar"/> |
| <!-- <pathelement location="${prj}/../unoil/${inpath}/class/unoil.jar"/> --> |
| <pathelement location="${solar.jar}/jurt.jar"/> |
| <pathelement location="${solar.jar}/juh.jar"/> |
| <pathelement location="${solar.jar}/java_uno.jar"/> |
| <pathelement location="${solar.jar}/ridl.jar"/> |
| </path> |
| <path id="scriptexampleclasspath"> |
| <pathelement location="${solar.jar}/unoil.jar"/> |
| <!-- pathelement location="${prj}/../unoil/${inpath}/class/unoil.jar"/ --> |
| <pathelement location="${solar.jar}/jurt.jar"/> |
| <pathelement location="${solar.jar}/juh.jar"/> |
| <pathelement location="${solar.jar}/java_uno.jar"/> |
| <pathelement location="${solar.jar}/ridl.jar"/> |
| <pathelement location="${out}/class/ScriptRuntimeForJava.jar"/> |
| </path> |
| |
| <path id="debuggerclasspath"> |
| <pathelement location="${out}/class/ScriptRuntimeForJava.jar"/> |
| <pathelement location="${solar.jar}/ridl.jar"/> |
| <pathelement location="${solar.jar}/unoil.jar"/> |
| <pathelement location="${out}/class/jsruntime/skip_registration/js.jar"/> |
| <pathelement location="${install.dir}/bsh-1.2b7.jar"/> |
| </path> |
| <!-- ===================== Set up build conditionals ========================= --> |
| <target name="product.test"> |
| <condition property="noproext"> |
| <equals arg1="$${env.PROEXT}" arg2="${env.PROEXT}"/> |
| </condition> |
| </target> |
| <target name="nonproduct.set" if="noproext"> |
| <echo message="non-product build"/> |
| <property name="proext" value=""/> |
| </target> |
| <target name="product.set" unless="noproext"> |
| <echo message="product build"/> |
| <property name="proext" value="${env.PROEXT}"/> |
| </target> |
| <target name="build.conditions" depends="product.test,nonproduct.set,product.set"> |
| <condition property="win9.build"> |
| <available file="${prj}/wntmsci9${proext}"/> |
| </condition> |
| <condition property="win8.build"> |
| <available file="${prj}/wntmsci8${proext}"/> |
| </condition> |
| <condition property="win7.build"> |
| <available file="${prj}/wntmsci7${proext}"/> |
| </condition> |
| <condition property="linx86.build"> |
| <available file="${prj}/unxlngi5${proext}"/> |
| </condition> |
| <condition property="solsparc.build"> |
| <available file="${prj}/unxsols4${proext}"/> |
| </condition> |
| <!-- <condition property="openoffice.build"> |
| </condition> --> |
| </target> |
| <!-- ===================== Build the examples ========================= --> |
| <target name="buildexamples"> |
| |
| <mkdir dir="${out}/class/examples/java/debugger"/> |
| <javac srcdir="${prj}/examples/java/debugger" |
| destdir="${out}/class/examples/java/debugger" |
| includes="*.java" |
| classpathref="debuggerclasspath" |
| debug="${debug}" optimize="${optimize}" deprecation="on"/> |
| |
| <copy todir="${out}/class/examples/java/debugger"> |
| <fileset dir="${prj}/examples/java/debugger"> |
| <include name="**/*.java"/> |
| <include name="*.xml"/> |
| </fileset> |
| </copy> |
| |
| <jar jarfile="${out}/class/examples/java/debugger/debugger.jar" |
| basedir="${out}/class/examples/java/debugger" includes="*.class"> |
| <manifest> |
| <attribute name="Built-By" value="Sun Microsystems"/> |
| <attribute name="ScriptFramework-Version" value="${sfversion}"/> |
| </manifest> |
| </jar> |
| |
| <delete> |
| <fileset dir="${out}/class/examples/java/debugger" includes="*.class"/> |
| </delete> |
| |
| <mkdir dir="${out}/class/examples/java/Highlight"/> |
| <javac srcdir="${prj}/examples/java/" destdir="${out}/class/examples/java/Highlight/" |
| includes="**/Highlight*.java" classpathref="idlclasspath" |
| debug="${debug}" optimize="${optimize}" deprecation="on"/> |
| <copy todir="${out}/class/examples/java/Highlight/"> |
| <fileset dir="${prj}/examples/java/"> |
| <include name="**/Highlight*.java"/> |
| </fileset> |
| </copy> |
| <copy file="${prj}/examples/java/HighlightTextParcel.xml" tofile="${out}/class/examples/java/Highlight/parcel-descriptor.xml"/> |
| <jar jarfile="${out}/class/examples/java/Highlight/Highlight.jar" |
| basedir="${out}/class/examples/java/Highlight" |
| includes="**/*.java,**/*.class,**/*.xml" |
| excludes="${out}/class/examples/java/Highlight/Highlight.jar"> |
| <manifest> |
| <attribute name="Built-By" value="Sun Microsystems"/> |
| <attribute name="ScriptFramework-Version" value="${sfversion}"/> |
| </manifest> |
| </jar> |
| <mkdir dir="${out}/class/examples/java/MemoryUsage"/> |
| <javac srcdir="${prj}/examples/java/" destdir="${out}/class/examples/java/MemoryUsage/" |
| includes="**/MemoryUsage.java" classpathref="idlclasspath" |
| debug="${debug}" optimize="${optimize}" deprecation="on"/> |
| <copy file="${prj}/examples/java/MemoryUsage.java" todir="${out}/class/examples/java/MemoryUsage/"/> |
| <copy file="${prj}/examples/java/MemoryUsageParcel.xml" tofile="${out}/class/examples/java/MemoryUsage/parcel-descriptor.xml"/> |
| <copy file="${prj}/examples/java/MemoryUsage.java" todir="${out}/class/examples/java/MemoryUsage/"/> |
| <copy file="${prj}/examples/java/ExampleSpreadSheet.sxc" todir="${out}/class/examples/java/MemoryUsage/"/> |
| |
| <mkdir dir="${out}/class/examples/java/ScriptFrmwrkHelper"/> |
| <javac srcdir="${prj}/examples/java/" destdir="${out}/class/examples/java/ScriptFrmwrkHelper/" |
| includes="**/ScriptFrmwrkHelper.java" classpathref="scriptexampleclasspath" |
| debug="${debug}" optimize="${optimize}" deprecation="on"/> |
| <copy todir="${out}/class/examples/java/ScriptFrmwrkHelper/"> |
| <fileset dir="${prj}/examples/java/"> |
| <include name="**/ScriptFrmwrkHelper.java"/> |
| </fileset> |
| </copy> |
| <copy file="${prj}/examples/java/ScriptFrameWkHelperParcel.xml" tofile="${out}/class/examples/java/ScriptFrmwrkHelper/parcel-descriptor.xml"/> |
| <jar jarfile="${out}/class/examples/java/ScriptFrmwrkHelper/ScriptFrmwrkHelper.jar" |
| basedir="${out}/class/examples/java/ScriptFrmwrkHelper" |
| includes="**/*.java,**/*.class,**/*.xml" |
| excludes="${out}/class/examples/java/ScriptFrmwrkHelper/ScriptFrmwrkHelper.jar"> |
| <manifest> |
| <attribute name="Built-By" value="Sun Microsystems"/> |
| <attribute name="ScriptFramework-Version" value="${sfversion}"/> |
| </manifest> |
| </jar> |
| <mkdir dir="${out}/class/examples/beanshell"/> |
| <copy todir="${out}/class/examples/beanshell"> |
| <fileset dir="${prj}/examples/beanshell" includes="**"/> |
| </copy> |
| <mkdir dir="${out}/class/examples/javascript"/> |
| <copy todir="${out}/class/examples/javascript"> |
| <fileset dir="${prj}/examples/javascript" includes="**"/> |
| </copy> |
| </target> |
| |
| <!-- ===================== Build UNO package ========================= --> |
| <target name="buildunopackage_win9" depends="build.conditions" if="win9.build"> |
| <mkdir dir="${out}/class/sframeworkinstall/sframework"/> |
| <mkdir dir="${out}/class/sframework"/> |
| <copy file="${solar.bin}/ScriptFramework.rdb" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptRuntimeForJava.jar" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptFramework.jar" |
| todir="${out}/class/sframework/"/> |
| <mkdir dir="${out}/class/sframework/windows.plt"/> |
| <copy todir="${out}/class/sframework/windows.plt"> |
| <fileset dir="${prj}/wntmsci9${proext}/bin/"> |
| <include name="**/*.dll"/> |
| </fileset> |
| </copy> |
| <mkdir dir="${out}/class/sframework/skip_registration"/> |
| <copy file="${solar.jar}/unoil.jar" |
| todir="${out}/class/sframework/skip_registration"/> |
| </target> |
| <target name="buildunopackage_win8" depends="build.conditions" if="win8.build"> |
| <mkdir dir="${out}/class/sframeworkinstall/sframework"/> |
| <mkdir dir="${out}/class/sframework"/> |
| <copy file="${solar.bin}/ScriptFramework.rdb" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptRuntimeForJava.jar" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptFramework.jar" |
| todir="${out}/class/sframework/"/> |
| <mkdir dir="${out}/class/sframework/windows.plt"/> |
| <copy todir="${out}/class/sframework/windows.plt"> |
| <fileset dir="${prj}/wntmsci8${proext}/bin/"> |
| <include name="**/*.dll"/> |
| </fileset> |
| </copy> |
| <mkdir dir="${out}/class/sframework/skip_registration"/> |
| <copy file="${solar.jar}/unoil.jar" |
| todir="${out}/class/sframework/skip_registration"/> |
| </target> |
| <!-- <target name="buildunopackage_win7" depends="build.conditions" if="win7.build"> |
| <mkdir dir="${out}/class/sframeworkinstall/sframework"/> |
| <mkdir dir="${out}/class/sframework"/> |
| <copy file="${solar.bin}/ScriptFramework.rdb" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptRuntimeForJava.jar" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptFramework.jar" |
| todir="${out}/class/sframework/"/> |
| <mkdir dir="${out}/class/sframework/windows.plt"/> |
| <copy todir="${out}/class/sframework/windows.plt"> |
| <fileset dir="${prj}/wntmsci7${proext}/bin/"> |
| <include name="**/*.dll"/> |
| </fileset> |
| </copy> |
| <mkdir dir="${out}/class/sframework/skip_registration"/> |
| <copy file="${solar.jar}/unoil.jar" |
| todir="${out}/class/sframework/skip_registration"/> |
| </target> --> |
| <target name="buildunopackage_linux" depends="build.conditions" if="linx86.build"> |
| <mkdir dir="${out}/class/sframeworkinstall/sframework"/> |
| <mkdir dir="${out}/class/sframework"/> |
| <copy file="${solar.bin}/ScriptFramework.rdb" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptRuntimeForJava.jar" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptFramework.jar" |
| todir="${out}/class/sframework/"/> |
| <mkdir dir="${out}/class/sframework/linux_x86.plt"/> |
| <copy todir="${out}/class/sframework/linux_x86.plt"> |
| <fileset dir="${prj}/unxlngi5${proext}/lib/"> |
| <include name="**/lib*.so"/> |
| </fileset> |
| </copy> |
| <mkdir dir="${out}/class/sframework/skip_registration"/> |
| <copy file="${solar.jar}/unoil.jar" |
| todir="${out}/class/sframework/skip_registration"/> |
| </target> |
| <target name="buildunopackage_solaris" depends="build.conditions" if="solsparc.build"> |
| <mkdir dir="${out}/class/sframeworkinstall/sframework"/> |
| <mkdir dir="${out}/class/sframework"/> |
| <copy file="${solar.bin}/ScriptFramework.rdb" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptRuntimeForJava.jar" |
| todir="${out}/class/sframework/"/> |
| <copy file="${out}/class/ScriptFramework.jar" |
| todir="${out}/class/sframework/"/> |
| <mkdir dir="${out}/class/sframework/solaris_sparc.plt"/> |
| <copy todir="${out}/class/sframework/solaris_sparc.plt"> |
| <fileset dir="${prj}/unxsols4${proext}/lib/"> |
| <include name="**/lib*.so"/> |
| </fileset> |
| </copy> |
| <mkdir dir="${out}/class/sframework/skip_registration"/> |
| <copy file="${solar.jar}/unoil.jar" |
| todir="${out}/class/sframework/skip_registration"/> |
| </target> |
| <target name="buildunopackage" depends="buildunopackage_win8,buildunopackage_linux,buildunopackage_solaris"> |
| <!-- <target name="buildunopackage" depends="buildunopackage_win9,buildunopackage_win7,buildunopackage_linux,buildunopackage_solaris"> --> |
| <copy file="installer/ProtocolHandler.xcu" |
| todir="${out}/class/sframework/"/> |
| <zip zipfile="${out}/class/sframeworkinstall/sframework/ooscriptframe.zip" |
| basedir="${out}/class/sframework"> |
| </zip> |
| </target> |
| |
| <!-- ================== Build JavaScript UNO package ===================== --> |
| <target name="buildjsuno"> |
| <mkdir dir="${out}/class/sframeworkinstall/sframework"/> |
| |
| <mkdir dir="${out}/class/jsruntime"/> |
| <mkdir dir="${out}/class/jsruntime/skip_registration"/> |
| <mkdir dir="${out}/class/jsruntimetmp"/> |
| |
| <copy file="${out}/class/ScriptRuntimeForJavaScript.jar" |
| todir="${out}/class/jsruntime/"/> |
| <copy file="installer/Scripting.JavaScript.xcu" |
| tofile="${out}/class/jsruntime/Scripting.xcu"/> |
| |
| <unzip src="${install.dir}/js.jar" |
| dest="${out}/class/jsruntimetmp"/> |
| |
| <javac srcdir="${prj}/examples/java/debugger" |
| destdir="${out}/class/jsruntimetmp" |
| includes="rhino/Main.java" classpathref="debuggerclasspath" |
| debug="${debug}" optimize="${optimize}" deprecation="on"/> |
| |
| <zip destfile="${out}/class/jsruntime/skip_registration/js.jar" |
| basedir="${out}/class/jsruntimetmp" includes="**"/> |
| |
| <zip zipfile="${out}/class/sframeworkinstall/sframework/jsruntime.zip" |
| basedir="${out}/class/jsruntime"> |
| </zip> |
| </target> |
| |
| <!-- =================== Build BeanShell UNO package ===================== --> |
| <target name="buildbshuno"> |
| <mkdir dir="${out}/class/bshruntime"/> |
| <copy file="${out}/class/ScriptRuntimeForBeanShell.jar" |
| todir="${out}/class/bshruntime/"/> |
| <copy file="installer/Scripting.BeanShell.xcu" |
| tofile="${out}/class/bshruntime/Scripting.xcu"/> |
| <mkdir dir="${out}/class/bshruntime/skip_registration"/> |
| <copy file="${install.dir}/bsh-1.2b7.jar" |
| todir="${out}/class/bshruntime/skip_registration"/> |
| <zip zipfile="${out}/class/sframeworkinstall/sframework/bshruntime.zip" |
| basedir="${out}/class/bshruntime"> |
| </zip> |
| </target> |
| |
| <!-- ========= Package schema, scripts, dialogs & examples =========== --> |
| <target name="packagedialogsandexamples" depends="buildexamples"> |
| <mkdir dir="${out}/class/sframeworkinstall/schema"/> |
| <copy file="installer/Scripting.xcs" |
| todir="${out}/class/sframeworkinstall/schema/"/> |
| <mkdir dir="${out}/class/sframeworkinstall/bindingdialog"/> |
| <copy todir="${out}/class/sframeworkinstall/bindingdialog"> |
| <fileset dir="bindings/"> |
| <include name="**/*.x*"/> |
| </fileset> |
| </copy> |
| <mkdir dir="${out}/class/sframeworkinstall/examples"/> |
| <copy todir="${out}/class/sframeworkinstall/examples"> |
| <fileset dir="${out}/class/examples/"/> |
| </copy> |
| </target> |
| |
| <!-- ===================== Package IDEs ================================== --> |
| <target name="packageide"> |
| <mkdir dir="${out}/class/sframeworkinstall/ide"/> |
| <copy todir="${out}/class/sframeworkinstall/ide"> |
| <fileset dir="${out}/class/"> |
| <include name="idesupport.jar"/> |
| <include name="office.jar"/> |
| </fileset> |
| </copy> |
| </target> |
| |
| <!-- ======================== Compile Classes ========================== --> |
| <target name="compileinstaller"> |
| <mkdir dir="${installerclasses}"/> |
| <javac srcdir="installer/" destdir="${installerclasses}" |
| includes="**/*.java" classpathref="idlclasspath" |
| debug="${debug}" optimize="${optimize}" deprecation="on"/> |
| <copy file="installer/sidebar.jpg" todir="${out}/class/sframeworkinstall/installer"/> |
| </target> |
| |
| <!-- ===================== jar ========================= --> |
| <target name="jar" depends="buildunopackage,buildbshuno,buildjsuno,compileinstaller,packagedialogsandexamples,packageide"> |
| <jar jarfile="${jardir}/${installerjarname}" |
| basedir="${installerclasses}"> |
| <manifest> |
| <attribute name="Built-By" value="Sun Microsystems"/> |
| <attribute name="ScriptFramework-Version" value="${sfversion}"/> |
| <attribute name="Main-Class" value="installer.InstallWizard"/> |
| </manifest> |
| </jar> |
| </target> |
| |
| <!-- ====================== Clean Generated Files ===================== --> |
| <target name="clean"> |
| <delete dir="${scriptingclasses}"/> |
| <delete dir="${storageclasses}"/> |
| <delete dir="${jardir}/${scriptingjarname}"/> |
| </target> |
| |
| <!-- ========================= All In One Build ======================= --> |
| <target name="all" depends="clean,jar"/> |
| |
| |
| </project> |