summaryrefslogtreecommitdiff
path: root/qpid/java/management/eclipse-plugin/build-release.xml
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/java/management/eclipse-plugin/build-release.xml')
-rw-r--r--qpid/java/management/eclipse-plugin/build-release.xml172
1 files changed, 172 insertions, 0 deletions
diff --git a/qpid/java/management/eclipse-plugin/build-release.xml b/qpid/java/management/eclipse-plugin/build-release.xml
new file mode 100644
index 0000000000..dec4cd5f32
--- /dev/null
+++ b/qpid/java/management/eclipse-plugin/build-release.xml
@@ -0,0 +1,172 @@
+<!--
+ -
+ - 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="JMX Management Console Binary Release" default="release-bin">
+
+ <!-- check properties that must be set by caller -->
+ <target name="check" description="ensure all required properties are set">
+ <condition property="properties.set">
+ <and>
+ <!-- common properties -->
+ <isset property ="mcplugin.filename"/>
+ <isset property ="jmxremote.sasl.manifest"/>
+ <!-- platform specific properties -->
+ <isset property ="qpidmc.ini"/>
+ <isset property ="qpidmc.executable"/>
+ <isset property ="release.name"/>
+ <isset property ="release.subdir"/>
+ <isset property ="rcp.libs"/>
+ <isset property ="rcp.configuration.dir"/>
+ <or>
+ <isset property ="release.zip"/>
+ <isset property ="release.tar.gz"/>
+ </or>
+ </and>
+ <!-- Optional Properties:
+
+ For linux libcairo-swt.so file:
+ qpidmc.companion.library
+
+ For solaris .xpm files:
+ qpidmc.solaris.xpm.files
+
+ -->
+ </condition>
+
+ <fail unless="properties.set" message="some required properties were not set"/>
+ </target>
+
+ <target name="release-bin-prepare">
+ <mkdir dir="${release.subdir}"/>
+ </target>
+
+ <target name="release-bin-qpid-mc-plugin">
+ <available file="${build.lib}/qpid-management-eclipse-plugin-${project.version}.jar" property="management-eclipse-plugin.jar.present"/>
+ <fail unless="management-eclipse-plugin.jar.present" message="Please run ant build for the management-eclipse-plugin module"/>
+
+ <!-- Copy the qpid management-eclipse-plugin module jar -->
+ <copy tofile="${release.subdir}/plugins/${mcplugin.filename}.jar" flatten="true" failonerror="true">
+ <fileset file="${build.lib}/qpid-management-eclipse-plugin-${project.version}.jar"/>
+ </copy>
+ </target>
+
+ <target name="release-bin-jmxremote-plugin">
+ <!-- Copy the jmxremote.sasl plugin's manifest, creating its plugin directory -->
+ <copy todir="${release.subdir}/plugins/jmxremote.sasl_1.0.1/META-INF" flatten="true" failonerror="true">
+ <fileset file="${jmxremote.sasl.manifest}"/>
+ </copy>
+ </target>
+
+ <target name="release-bin-qpid-management-common-plugin">
+ <available file="${build.lib}/qpid-management-common_${project.version}.0.osgi.jar" property="management-common.jar.present"/>
+ <fail unless="management-common.jar.present" message="Please run ant bundle for the management-common module"/>
+
+ <!-- Copy the qpid-management-common module osgi jar -->
+ <copy todir="${release.subdir}/plugins" failonerror="true">
+ <fileset file="${build.lib}/qpid-management-common_${project.version}.0.osgi.jar"/>
+ </copy>
+ </target>
+
+ <target name="release-bin-executable-companion-library" if="qpidmc.companion.library">
+ <!-- Copy the rcp executable companion library file -->
+ <copy todir="${release.subdir}" flatten="true" failonerror="true">
+ <fileset file="${qpidmc.companion.library}"/>
+ </copy>
+ </target>
+
+ <target name="release-bin-executable-solaris-xpm-files" if="qpidmc.solaris.xpm.files">
+ <!-- Copy the solaris xpm files -->
+ <copy todir="${release.subdir}" flatten="true" failonerror="true">
+ <fileset dir="${basedir}" includes="${qpidmc.solaris.xpm.files}"/>
+ </copy>
+ </target>
+
+ <target name="release-bin-rcp-deps" description="copy eclipse-rcp dependencies into module release"
+ depends="release-bin-executable-companion-library, release-bin-executable-solaris-xpm-files">
+
+ <!-- Copy the rcp executable file -->
+ <copy todir="${release.subdir}" flatten="true" failonerror="true">
+ <fileset file="${qpidmc.executable}"/>
+ </copy>
+ <chmod dir="${release.subdir}" perm="u+rx" includes="qpidmc*"/>
+
+ <!-- Copy remaining startup & license files -->
+ <copy todir="${release.subdir}" flatten="true" failonerror="true">
+ <fileset file="${qpidmc.ini}"/>
+ </copy>
+
+ <!-- Copy the rcp module libs -->
+ <copy todir="${release.subdir}/plugins" failonerror="true">
+ <fileset dir="${project.root}" includes="${rcp.libs}"/>
+ <globmapper from="lib${file.separator}*" to="*"/>
+ </copy>
+
+ <!-- Copy the relevant configuration dir -->
+ <copy todir="${release.subdir}/configuration" failonerror="true">
+ <fileset dir="${rcp.configuration.dir}"/>
+ </copy>
+ <chmod dir="${release.subdir}/configuration" perm="ugo+r" includes="**/*"/>
+ </target>
+
+ <target name="release-bin-zip" if="release.zip" description="build mc zip archive">
+ <zip destfile="${release.zip}">
+ <zipfileset dir="${release.subdir}" prefix="${release.name}" filemode="755">
+ <include name="qpidmc*"/>
+ <exclude name="qpidmc.ini"/>
+ </zipfileset>
+
+ <zipfileset dir="${release.subdir}" prefix="${release.name}" filemode="644">
+ <include name="qpidmc.ini"/>
+ </zipfileset>
+
+ <zipfileset dir="${release.subdir}" prefix="${release.name}" filemode="644" dirmode="755">
+ <exclude name="qpidmc*"/>
+ </zipfileset>
+ </zip>
+ </target>
+
+ <target name="release-bin-gzip" if="release.tar.gz" description="build mc tar.gz archive">
+ <tar destfile="${release.tar.gz}" longfile="gnu" compression="gzip">
+ <tarfileset dir="${release.subdir}" prefix="${release.name}" filemode="755">
+ <include name="qpidmc*"/>
+ <exclude name="qpidmc.ini"/>
+ </tarfileset>
+
+ <tarfileset dir="${release.subdir}" prefix="${release.name}" filemode="644">
+ <include name="qpidmc.ini"/>
+ </tarfileset>
+
+ <tarfileset dir="${release.subdir}" prefix="${release.name}" filemode="644" dirmode="755">
+ <exclude name="qpidmc*"/>
+ </tarfileset>
+ </tar>
+ </target>
+
+ <target name="release-bin-resources" description="copy project resources into module release">
+ <copy todir="${release.subdir}" failonerror="false" flatten="true">
+ <fileset dir="${resources}" excludes="META-INF"/>
+ </copy>
+ </target>
+
+ <!-- override imported module.xml release-bin target -->
+ <target name="release-bin" depends="check,release-bin-prepare,release-bin-rcp-deps,release-bin-resources,
+ release-bin-qpid-mc-plugin,release-bin-qpid-management-common-plugin,release-bin-jmxremote-plugin,release-bin-zip,release-bin-gzip"/>
+
+</project>