blob: 4e83383ab583c32d6cbba1dc368009c11346d817 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
******************************************************************************
* Copyright (c) 2008, 2010 VMware Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* VMware Inc. - initial contribution
******************************************************************************
-->
<project name="package-common" xmlns:ivy="antlib:org.apache.ivy.ant">
<import file="common.xml"/>
<!-- Main targets -->
<target name="package"
description="Copies all external and created artifacts to a packaging location. Unless overriden, copies nothing.">
<echo message="${ant.project.name} contributed no artifacts to packaging. To contribute, override the 'package' target in the bundle." />
</target>
<target name="copy-dist-jar" depends="ivy.init"
description="Copies the distributable jar to a location">
<dist-jar output.dir="${copy.to.dir}"/>
</target>
<target name="copy-ext-jars" depends="ivy.init"
description="Copies the external jars to a location">
<ext-jars output.dir="${copy.to.dir}"/>
</target>
<target name="copy-provided-jars" depends="ivy.init"
description="Copies the provided jars to a location">
<provided-jars output.dir="${copy.to.dir}"/>
</target>
<target name="copy-provided-libs" depends="ivy.init"
description="Copies the provided libs to a location">
<provided-libs output.dir="${copy.to.dir}"/>
</target>
<!-- Macros -->
<macrodef name="dist-jar">
<attribute name="output.dir" default="${package.dist.dir}"/>
<sequential>
<mkdir dir="@{output.dir}"/>
<copy file="${jar.output.file}" tofile="@{output.dir}/${package.jar.output.file}"/>
</sequential>
</macrodef>
<macrodef name="src-jar">
<attribute name="output.dir" default="${package.src.dir}"/>
<sequential>
<mkdir dir="@{output.dir}"/>
<copy file="${source-jar.output.file}" tofile="@{output.dir}/${package.source-jar.output.file}"/>
</sequential>
</macrodef>
<macrodef name="add-jars">
<attribute name="output.dir" default="${package.lib.dir}"/>
<sequential>
<mkdir dir="@{output.dir}"/>
<ivy:retrieve resolveId="additional.classpath" conf="additional" type="jar"
pattern="@{output.dir}/[artifact]-[revision].[ext]" log="download-only"/>
</sequential>
</macrodef>
<macrodef name="ext-jars">
<attribute name="output.dir" default="${package.lib.dir}"/>
<sequential>
<mkdir dir="@{output.dir}"/>
<ivy:retrieve resolveId="runtime.classpath" conf="runtime" type="jar"
pattern="@{output.dir}/[artifact]-[revision].[ext]" log="download-only"/>
</sequential>
</macrodef>
<macrodef name="ext-jars-shallow">
<attribute name="output.dir" default="${package.lib.dir}"/>
<sequential>
<mkdir dir="@{output.dir}"/>
<ivy:retrieve resolveId="runtime.classpath" conf="runtime" type="jar" transitive="false"
pattern="@{output.dir}/[artifact]-[revision].[ext]" log="download-only"/>
</sequential>
</macrodef>
<macrodef name="provided-jars">
<attribute name="output.dir" default="${package.lib.dir}"/>
<sequential>
<mkdir dir="@{output.dir}"/>
<ivy:retrieve resolveId="provided.classpath" conf="provided" type="jar"
pattern="@{output.dir}/[artifact]-[revision].[ext]" log="download-only"/>
</sequential>
</macrodef>
<macrodef name="provided-libs">
<attribute name="output.dir" default="${package.lib.dir}"/>
<sequential>
<mkdir dir="@{output.dir}"/>
<ivy:retrieve resolveId="provided.classpath" conf="provided" type="library"
pattern="@{output.dir}/[artifact]-[revision].[ext]" log="download-only"/>
</sequential>
</macrodef>
</project>