| <?xml version="1.0"?> |
| |
| <!-- |
| Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. |
| DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
| |
| This code is free software; you can redistribute it and/or modify it |
| under the terms of the GNU General Public License version 2 only, as |
| published by the Free Software Foundation. Oracle designates this |
| particular file as subject to the "Classpath" exception as provided |
| by Oracle in the LICENSE file that accompanied this code. |
| |
| This code is distributed in the hope that it will be useful, but WITHOUT |
| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
| version 2 for more details (a copy is included in the LICENSE file that |
| accompanied this code). |
| |
| You should have received a copy of the GNU General Public License version |
| 2 along with this work; if not, write to the Free Software Foundation, |
| Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
| |
| Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
| or visit www.oracle.com if you need additional information or have any |
| questions. |
| --> |
| |
| |
| |
| <!-- README - HOW TO USE THIS BUILD FILE |
| . You need Ant 1.5 or higher available in your path |
| . You need a build of Java SE 6 available in your path, or JAVA_HOME set to such a build |
| . cd to the directory containing this build.xml file |
| . Launch the build by typing: ant |
| . Please also read the important comment on basedir definition below. |
| --> |
| |
| <project name="JMX API Version 1.4 - Java SE 6 implementation" |
| default="jar" |
| basedir="../../../../.." |
| > |
| |
| <!-- IMPORTANT: BASEDIR DEFINITION |
| This file is assumed to be in: |
| <src_bundle_dir>/j2se/src/share/classes/javax/management |
| Thus the basedir for this project is defined above as: |
| basedir="../../../../.." |
| in order to be the parent dir of src subdir. |
| Result of the build will be placed in ${basedir}/build_jmx |
| as defined by ${dir.build} property below. |
| --> |
| |
| <description> |
| Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. |
| |
| Description: JMX API Version 1.4 - Source Code from Java SE 6 |
| </description> |
| |
| |
| <!-- build properties --> |
| |
| <property name="dir.src" |
| location="${basedir}/src/share/classes" /> |
| |
| <property name="dir.build" |
| location="${basedir}/build_jmx" /> |
| |
| <property name="dir.build.lib" |
| location="${dir.build}/lib" /> |
| |
| <property name="dir.build.classes" |
| location="${dir.build}/classes" /> |
| |
| <property name="dir.build.cache" |
| location="${dir.build}/cache" /> |
| |
| <property name="flag.debug" |
| value="on" /> |
| |
| <property name="flag.debug.level" |
| value="lines,source" /> |
| |
| <property name="flag.optimize" |
| value="on" /> |
| |
| <property name="flag.javac.source" |
| value="1.6" /> |
| |
| <property name="flag.deprecation" |
| value="off" /> |
| |
| <!-- ANT: when compiling, ignore the classpath in effect when Ant is run |
| and therefore use only the classpath specified in the javac tasks --> |
| <property name="build.sysclasspath" |
| value="ignore" /> |
| |
| |
| |
| <!-- Concatenated classpaths: one classpath for each build purpose --> |
| |
| <path id="classpath.tobuild.jmx"> |
| <!-- EMPTY, NO DEPENDENCY! --> |
| </path> |
| |
| |
| |
| <!-- Convert path objects to string properties for display --> |
| |
| <property name="property.classpath.tobuild.jmx" refid="classpath.tobuild.jmx" /> |
| |
| |
| |
| |
| <!-- ********************* --> |
| <!-- *** BUILD TARGETS *** --> |
| <!-- ********************* --> |
| |
| |
| <!-- ~~~~~~~~~~~~~~~~~~~~ --> |
| <!-- Initialize the build --> |
| |
| <target name="init" > |
| |
| <!-- Set the values for build date and time --> |
| <tstamp> |
| <format property="BUILD_DATE" pattern="yyyy.MM.dd_HH:mm:ss_z" /> |
| </tstamp> |
| |
| <!-- Create the build directory --> |
| <mkdir dir="${dir.build}" /> |
| |
| <!-- Log the values of all properties to file --> |
| <echoproperties destfile="${dir.build}/properties.log" /> |
| |
| <!-- Display the values of most important properties --> |
| <echo /> |
| <echo>See the contents of ${dir.build}/properties.log for all defined properties.</echo> |
| <echo /> |
| <echo message="MAIN JVM DEFAULT SYSTEM PROPERTIES: " /> |
| <echo message=" java.runtime.version = ${java.runtime.version}" /> |
| <echo message=" java.home = ${java.home}" /> |
| <echo message=" os.arch = ${os.arch}" /> |
| <echo message=" os.name = ${os.name}" /> |
| <echo message=" os.version = ${os.version}" /> |
| <echo message=" user.name = ${user.name}" /> |
| <echo /> |
| <echo message="ANT BUILT-IN PROPERTIES: " /> |
| <echo message=" basedir = ${basedir}" /> |
| <echo message=" ant.file = ${ant.file}" /> |
| <echo message=" ant.version = ${ant.version}" /> |
| <echo message=" ant.project.name = ${ant.project.name}" /> |
| <echo message=" ant.java.version = ${ant.java.version}" /> |
| <echo /> |
| <echo message="MAIN ANT BUILD-SET PROPERTIES: " /> |
| <echo message=" dir.src = ${dir.src}" /> |
| <echo message=" dir.build = ${dir.build}" /> |
| <echo message=" classpath.tobuild.jmx = ${property.classpath.tobuild.jmx}" /> |
| <echo message=" flag.debug = ${flag.debug}" /> |
| <echo message=" flag.debug.level = ${flag.debug.level}" /> |
| <echo message=" flag.optimize = ${flag.optimize}" /> |
| <echo message=" flag.javac.source = ${flag.javac.source}" /> |
| <echo message=" flag.deprecation = ${flag.deprecation}" /> |
| <echo message=" BUILD_DATE = ${BUILD_DATE}" /> |
| |
| </target> |
| |
| |
| |
| <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> |
| <!-- Call classes subtargets and rmic stubs generation --> |
| |
| <target name="classes" depends="init,classes-javac,classes-rmic" |
| description="Call classes subtargets and rmic stubs generation" |
| /> |
| |
| |
| <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> |
| <!-- Build JMX java files --> |
| |
| <target name="classes-javac" depends="init" |
| description="Build JMX java files" > |
| |
| <mkdir dir="${dir.build.classes}" /> |
| |
| <javac srcdir="${dir.src}" |
| destdir="${dir.build.classes}" |
| source="${flag.javac.source}" |
| debug="${flag.debug}" |
| debuglevel="${flag.debug.level}" |
| optimize="${flag.optimize}" |
| includeAntRuntime="no" |
| includeJavaRuntime="no" |
| > |
| <include name="javax/management/**"/> |
| <include name="com/sun/jmx/**"/> |
| </javac> |
| |
| </target> |
| |
| |
| <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> |
| <!-- Generate RMI JRMP and IIOP stub class files for remote objects --> |
| |
| <target name="classes-rmic" depends="init,classes-javac" |
| description="Generate RMI JRMP and IIOP stub class files for remote objects" > |
| |
| |
| <!-- JRMP Stubs --> |
| |
| <rmic base="${dir.build.classes}" |
| classname="javax.management.remote.rmi.RMIConnectionImpl" |
| includeAntRuntime="no" |
| includeJavaRuntime="no" |
| stubversion="1.2" |
| > |
| </rmic> |
| |
| <rmic base="${dir.build.classes}" |
| classname="javax.management.remote.rmi.RMIServerImpl" |
| includeAntRuntime="no" |
| includeJavaRuntime="no" |
| stubversion="1.2" |
| > |
| </rmic> |
| |
| |
| <!-- IIOP Stubs --> |
| |
| <rmic base="${dir.build.classes}" |
| classname="javax.management.remote.rmi.RMIConnectionImpl" |
| includeAntRuntime="no" |
| includeJavaRuntime="no" |
| iiop="yes" |
| > |
| </rmic> |
| |
| <rmic base="${dir.build.classes}" |
| classname="javax.management.remote.rmi.RMIServerImpl" |
| includeAntRuntime="no" |
| includeJavaRuntime="no" |
| iiop="yes" |
| > |
| </rmic> |
| |
| </target> |
| |
| |
| <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> |
| <!-- Jar all JMX classes --> |
| |
| <target name="jar" depends="init,classes" |
| description="Jar all JMX classes" > |
| |
| <mkdir dir="${dir.build.lib}" /> |
| |
| <jar jarfile="${dir.build.lib}/jmx.jar" |
| update="true" |
| > |
| |
| <fileset dir="${dir.build.classes}" |
| includes="**/*.class" |
| /> |
| |
| <manifest > |
| <attribute name="Build-JDK" value="${java.runtime.version}" /> |
| <attribute name="Build-Platform" value="${os.arch} ${os.name} ${os.version}" /> |
| <attribute name="Build-User" value="${user.name}" /> |
| <section name="common"> |
| <attribute name="Sealed" value="true" /> |
| <attribute name="Specification-Title" value="JMX(TM) API" /> |
| <attribute name="Specification-Version" value="1.4" /> |
| <attribute name="Specification-Vendor" value="Sun Microsystems, Inc." /> |
| <attribute name="Implementation-Title" value="JMX(TM) API, Java SE 6 implementation" /> |
| <attribute name="Implementation-Version" value="${BUILD_DATE} rebuild of Mustang JMX sources" /> |
| <attribute name="Implementation-Vendor" value="Source bundle from Sun Microsystems, Inc. - Customer rebuilt" /> |
| </section> |
| </manifest> |
| </jar> |
| |
| </target> |
| |
| |
| |
| <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> |
| <!-- Delete only all class files in build/classes directory hierarchy --> |
| |
| <target name="clean-classes" |
| description="Delete only all *.class files in build_jmx/classes dir" > |
| <delete> |
| <fileset dir="${dir.build.classes}" includes="**/*.class" /> |
| </delete> |
| </target> |
| |
| |
| <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> |
| <!-- Delete build directory and all its contents --> |
| |
| <target name="clean-all" |
| description="Delete build directory and all its contents" > |
| <delete dir="${dir.build}" /> |
| </target> |
| |
| |
| <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> |
| <!-- Clean all and build everything --> |
| |
| <target name="all" depends="clean-all,jar" |
| description="Clean all and build everything" /> |
| |
| |
| </project> |
| |