make/build.xml

Sat, 01 Dec 2007 00:00:00 +0000

author
duke
date
Sat, 01 Dec 2007 00:00:00 +0000
changeset 1
0961a4a21176
child 45
31822b475baa
child 54
a92183572d99
permissions
-rw-r--r--

Initial load

duke@1 1 <?xml version="1.0"?>
duke@1 2 <!--
duke@1 3 Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
duke@1 4 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
duke@1 5
duke@1 6 This code is free software; you can redistribute it and/or modify it
duke@1 7 under the terms of the GNU General Public License version 2 only, as
duke@1 8 published by the Free Software Foundation. Sun designates this
duke@1 9 particular file as subject to the "Classpath" exception as provided
duke@1 10 by Sun in the LICENSE file that accompanied this code.
duke@1 11
duke@1 12 This code is distributed in the hope that it will be useful, but WITHOUT
duke@1 13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
duke@1 14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
duke@1 15 version 2 for more details (a copy is included in the LICENSE file that
duke@1 16 accompanied this code).
duke@1 17
duke@1 18 You should have received a copy of the GNU General Public License version
duke@1 19 2 along with this work; if not, write to the Free Software Foundation,
duke@1 20 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
duke@1 21
duke@1 22 Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
duke@1 23 CA 95054 USA or visit www.sun.com if you need additional information or
duke@1 24 have any questions.
duke@1 25 -->
duke@1 26
duke@1 27 <!--
duke@1 28 This is the main build file for the jaxws workspace.
duke@1 29 -->
duke@1 30
duke@1 31 <project name="jaxws" default="all" basedir=".">
duke@1 32
duke@1 33 <!-- Convenient shorthands for standard locations within the workspace. -->
duke@1 34 <property file="build.properties"/>
duke@1 35 <property name="topdir" value=".."/>
duke@1 36 <property name="build.dir" location="${topdir}/build"/>
duke@1 37 <property name="build.classes.dir" location="${build.dir}/classes"/>
duke@1 38 <property name="build.gensrc.dir" location="${build.dir}/gensrc"/>
duke@1 39 <property name="build.toolclasses.dir" location="${build.dir}/toolclasses"/>
duke@1 40 <property name="dist.dir" location="${topdir}/dist"/>
duke@1 41 <property name="dist.lib.dir" location="${dist.dir}/lib"/>
duke@1 42 <property name="make.dir" location="${topdir}/make"/>
duke@1 43 <property name="make.tools.dir" location="${make.dir}/tools"/>
duke@1 44 <property name="src.dir" location="${topdir}/src"/>
duke@1 45 <property name="src.classes.dir" location="${src.dir}/share/classes"/>
duke@1 46 <property environment="env"/>
duke@1 47
duke@1 48 <target name="build" depends="banner, build-classes, build-tools, build-binaries">
duke@1 49 <mkdir dir="${dist.lib.dir}"/>
duke@1 50 <jar file="${dist.lib.dir}/classes.jar" basedir="${build.classes.dir}"/>
duke@1 51 <zip file="${dist.lib.dir}/src.zip" basedir="${src.classes.dir}"/>
duke@1 52 </target>
duke@1 53
duke@1 54 <!-- Debug information -->
duke@1 55 <target name="sanity"
duke@1 56 description="display settings of configuration values">
duke@1 57 <echo level="info">ant.home = ${ant.home}</echo>
duke@1 58 <echo level="info">java.home = ${env.JAVA_HOME}</echo>
duke@1 59 <echo level="info">bootstrap.dir = ${bootstrap.dir}</echo>
duke@1 60 </target>
duke@1 61
duke@1 62 <target name="build-tools" depends="-defs-pstrip">
duke@1 63 <mkdir dir="${build.dir}"/>
duke@1 64 <mkdir dir="${build.classes.dir}"/>
duke@1 65 <pstrip srcdir="${src.classes.dir}"
duke@1 66 destdir="${build.classes.dir}"
duke@1 67 includes="**/*.properties"/>
duke@1 68 </target>
duke@1 69
duke@1 70 <target name="build-binaries">
duke@1 71 <mkdir dir="${build.dir}"/>
duke@1 72 <mkdir dir="${build.classes.dir}"/>
duke@1 73 <copy todir="${build.classes.dir}">
duke@1 74 <fileset dir="${src.classes.dir}"
duke@1 75 includes="**/*.xsd, **/*.default"
duke@1 76 excludes="**/*.java, **/*.package.html, **/*.properties"/>
duke@1 77 </copy>
duke@1 78 <mkdir dir="${build.classes.dir}/META-INF/services"/>
duke@1 79 <copy todir="${build.classes.dir}/META-INF/services"
duke@1 80 file="${src.classes.dir}/com/sun/tools/etc/META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory"/>
duke@1 81 </target>
duke@1 82
duke@1 83 <target name="-defs-pstrip">
duke@1 84 <mkdir dir="${build.toolclasses.dir}"/>
duke@1 85 <javac srcdir="${make.tools.dir}/StripProperties"
duke@1 86 destdir="${build.toolclasses.dir}/"
duke@1 87 classpath="${ant.home}/lib/ant.jar"/>
duke@1 88 <taskdef name="pstrip"
duke@1 89 classname="StripPropertiesTask"
duke@1 90 classpath="${build.toolclasses.dir}/"/>
duke@1 91 </target>
duke@1 92
duke@1 93 <target name="build-classes" depends="sanity">
duke@1 94 <mkdir dir="${build.dir}"/>
duke@1 95 <mkdir dir="${build.classes.dir}"/>
duke@1 96 <javac fork="true"
duke@1 97 srcdir="${src.classes.dir}"
duke@1 98 destdir="${build.classes.dir}"
duke@1 99 memoryInitialSize="${javac.memoryInitialSize}"
duke@1 100 memoryMaximumSize="${javac.memoryMaximumSize}"
duke@1 101 target="${javac.target}"
duke@1 102 excludes="com/sun/tools/internal/txw2/**">
duke@1 103 <compilerarg value="-J-Xbootclasspath/p:${bootstrap.dir}/lib/javac.jar"/>
duke@1 104 <compilerarg line="${javac.version.opt}"/>
duke@1 105 <compilerarg line="${javac.no.jdk.warnings}"/>
duke@1 106 </javac>
duke@1 107 </target>
duke@1 108
duke@1 109 <target name="clean" description="Delete all generated files">
duke@1 110 <delete dir="${build.dir}"/>
duke@1 111 <delete dir="${dist.dir}"/>
duke@1 112 </target>
duke@1 113
duke@1 114 <target name="banner">
duke@1 115 <echo>+---------------------------------------+</echo>
duke@1 116 <echo>+ Building JAX-WS Component +</echo>
duke@1 117 <echo>+---------------------------------------+</echo>
duke@1 118 </target>
duke@1 119
duke@1 120 </project>

mercurial