blob: 5698ffb71a5039aee6d6a92c6275da4ecd6ac085 [file] [log] [blame]
<?xml version="1.0"?>
<!--
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="Apache.NMS.AMQP" default="default" xmlns="http://nant.sourceforge.net/release/0.85/nant.xsd">
<!-- ============================================================================================ -->
<!-- I N I T I A L I Z A T I O N -->
<!-- ============================================================================================ -->
<property name="basedir" value="${project::get-base-directory()}" />
<property name="project.name" value="Apache.NMS.AMQP" />
<property name="project.group" value="org.apache.activemq" />
<property name="project.version" value="1.8.0" unless="${property::exists('project.version')}" />
<property name="project.release.type" value="SNAPSHOT" unless="${property::exists('project.release.type')}" />
<property name="project.short_description" value="Apache NMS for AMQP Class Library" />
<property name="project.description" value="Apache NMS for AMQP Class Library (.Net Messaging Library Implementation): An implementation of the NMS API for AMQP using Apache QPID and Proton" />
<!-- Native Qpid DLLs -->
<property name="boost_chrono" value="boost_chrono-${vcver}-mt-1_47.dll" dynamic="true" />
<property name="boost_date_time" value="boost_date_time-${vcver}-mt-1_47.dll" dynamic="true" />
<property name="boost_program_options" value="boost_program_options-${vcver}-mt-1_47.dll" dynamic="true" />
<property name="boost_system" value="boost_system-${vcver}-mt-1_47.dll" dynamic="true" />
<property name="boost_thread" value="boost_thread-${vcver}-mt-1_47.dll" dynamic="true" />
<property name="qpidclient" value="qpidclient.dll" dynamic="true" />
<property name="qpidcommon" value="qpidcommon.dll" dynamic="true" />
<property name="qpidmessaging" value="qpidmessaging.dll" dynamic="true" />
<property name="qpid-proton" value="qpid-proton.dll" dynamic="true" />
<property name="qpidtypes" value="qpidtypes.dll" dynamic="true" />
<!-- Repository organized as: organization/module/version/plaform/artifact, platform might be something like 'all' or 'net-2.0/release' -->
<property name="nunit.dll" value="${basedir}/lib/NUnit/${current.build.framework}/nunit.framework.dll" dynamic="true" />
<property name="Apache.NMS.dll" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.dll" dynamic="true" />
<property name="Apache.NMS.pdb" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.pdb" dynamic="true" />
<property name="Apache.NMS.Test.dll" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.Test.dll" dynamic="true" />
<property name="Apache.NMS.Test.pdb" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.Test.pdb" dynamic="true" />
<property name="Apache.Qpid.dll" value="${basedir}/lib/Apache.Qpid/${current.build.framework}/org.apache.qpid.messaging.dll" dynamic="true" />
<property name="NUnit.Projectfile" value="Apache.NMS.AMQP.Test.nunit" />
<!-- Skip certain frameworks, since Apache Qpid is not supported on those platforms.
net-2.0 built by Visual Studio 2008, net4.0 built by Visual Studio 2010
to align .NET build with underlying unmanaged C runtime. -->
<property name="build.framework.strings" value="net-2.0,net-4.0"/>
<target name="vendor-init" description="Initializes Vendor library from local repository.">
<!--
Vendor specific info. The prefix of 'vendor.apache.org' is taken from the property
'vendor.fileset.names'. This comma-delimited list is iterated, and properties with
well-known suffixes are used to access and copy down vendor file dependencies.
-->
<property name="vendor.fileset.names" value="vendor.apache.org,vendor.nunit.org,vendor.qpid.apache.org" />
<!-- Property grouping for 'vendor.apache.org' -->
<property name="vendor.apache.org.name" value="Apache.NMS" />
<property name="vendor.apache.org.group" value="org.apache.activemq" />
<property name="vendor.apache.org.version" value="1.8.0" />
<property name="vendor.apache.org.filenames" value="Apache.NMS.dll,Apache.NMS.pdb,Apache.NMS.Test.dll,Apache.NMS.Test.pdb" />
<!-- Property grouping for 'vendor.nunit.org' -->
<property name="vendor.nunit.org.name" value="NUnit" />
<property name="vendor.nunit.org.group" value="org.nunit" />
<property name="vendor.nunit.org.version" value="2.5.8" />
<property name="vendor.nunit.org.filenames" value="nunit.framework.dll" />
<!-- Property grouping for 'vendor.qpid.apache.org' -->
<property name="vendor.qpid.apache.org.name" value="Apache.Qpid" />
<property name="vendor.qpid.apache.org.group" value="org.apache.qpid" />
<property name="vendor.qpid.apache.org.version" value="0.28.0.16239" />
<!-- net-4.0 built with VS2010 (vc100), net-2.0 built with VS2008 (vc90) -->
<property name="vcver" value="${if(current.build.framework == 'net-4.0', 'vc100', 'vc90')}" />
<echo message="Vendor-init current.build.framework = ${current.build.framework}, current.build.config = ${current.build.config}, vcver = ${vcver}" />
<property name="vendor.qpid.apache.org.filenames" value="org.apache.qpid.messaging.dll,${boost_chrono},${boost_date_time},${boost_program_options},${boost_system},${boost_thread},${qpidclient},${qpidcommon},${qpidmessaging},${qpid-proton},${qpidtypes}" dynamic="true"/>
</target>
<target name="dependency-init" description="Initializes build dependencies">
<assemblyfileset failonempty="true" id="dependencies">
<include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
<include name="${current.build.framework.assembly.dir}/System.dll" />
<include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
<include name="${Apache.NMS.dll}" />
<include name="${Apache.Qpid.dll}" />
</assemblyfileset>
<assemblyfileset failonempty="true" id="test.dependencies">
<include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
<include name="${current.build.framework.assembly.dir}/System.dll" />
<include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
<include name="${Apache.NMS.dll}" />
<include name="${Apache.NMS.Test.dll}" />
<include name="${Apache.Qpid.dll}" />
<include name="${build.bin.dir}/${project.name}.dll" />
<include name="${nunit.dll}" />
</assemblyfileset>
<fileset id="content.filenames">
<include name="LICENSE.txt" />
<include name="NOTICE.txt" />
<include name="nmsprovider-*.config" />
<include name="${Apache.NMS.dll}" />
<include name="${Apache.NMS.pdb}" />
<include name="${Apache.NMS.Test.dll}" />
<include name="${Apache.NMS.Test.pdb}" />
<include name="${Apache.Qpid.dll}" />
<include name="${nunit.dll}" />
<include name="${NUnit.Projectfile}" />
<!-- boost unmanaged: net-2.0 -->
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_chrono-vc90-mt-1_47.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_date_time-vc90-mt-1_47.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_program_options-vc90-mt-1_47.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_system-vc90-mt-1_47.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_thread-vc90-mt-1_47.dll" />
<!-- boost unmanaged net-4.0 -->
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_chrono-vc100-mt-1_47.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_date_time-vc100-mt-1_47.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_program_options-vc100-mt-1_47.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_system-vc100-mt-1_47.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/boost_thread-vc100-mt-1_47.dll" />
<!-- qpid native: identical names regardless of framework -->
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/qpid-proton.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/qpidclient.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/qpidcommon.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/qpidmessaging.dll" />
<include name="${basedir}/lib/Apache.Qpid/${current.build.framework}/qpidtypes.dll" />
</fileset>
<fileset id="install.filenames">
<include name="LICENSE.txt" />
<include name="NOTICE.txt" />
<include name="${build.bin.dir}/${project.name}.dll" />
<include name="${build.bin.dir}/${project.name}.pdb" />
</fileset>
</target>
<target name="default" depends="install-all" />
<zipfileset id="src.package.contents" basedir="${basedir}">
<include name="LICENSE.txt" />
<include name="NOTICE.txt" />
<include name="nant-common.xml" />
<include name="nant.build" />
<include name="nmsprovider*.config" />
<include name="vs2008-*.csproj" />
<include name="vs2010-*.csproj" />
<include name="vs2008-*.sln" />
<include name="vs2010-*.sln" />
<include name="keyfile/*" />
<include name="src/**/*.cs" />
<exclude name="src/sandbox/**" />
</zipfileset>
<zipfileset id="bin.package.contents" basedir="${basedir}">
<include name="LICENSE.txt" />
<include name="NOTICE.txt" />
<include name="build/**/nmsprovider*" />
<include name="build/**/${project.name}*" />
<include name="lib/**/*" />
<exclude name="build/**/%temp%/**" />
</zipfileset>
<!-- Load the common target definitions -->
<include buildfile="${basedir}/nant-common.xml" />
</project>