hammett 2004/04/09 17:55:19
Added: avalon-net/DynamicProxy DynamicProxy-compilations.build
DynamicProxy-helper.build DynamicProxy.build
README.txt WARNING.txt build.cmd
Log:
NAnt compilation scripts.
Revision Changes Path
1.1
avalon-sandbox/avalon-net/DynamicProxy/DynamicProxy-compilations.build
Index: DynamicProxy-compilations.build
===================================================================
<?xml version="1.0" ?>
<!--
Copyright 2003-2004 The Apache Software Foundation
Licensed 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="dynamicproxy-helper" xmlnds="http://tempuri.org/nant-vs.xsd">
<target name="compile-runtime" description="Compile all build configurations for
the current runtime configuration"
depends="check-current-runtime-config, check-current-runtime-version">
<echo message="Compiling all build configurations for the
${current.runtime.config}-${current.runtime.version} runtime configuration." />
<call target="set-debug-build-configuration" />
<!-- make sure that the runtime properties that rely on build configuration
information are refreshed -->
<call target="set-runtime-configuration" />
<call target="compile-${current.runtime.config}-${current.runtime.version}"
/>
<call target="set-release-build-configuration" />
<!-- make sure that the runtime properties that rely on build configuration
information are refreshed -->
<call target="set-runtime-configuration" />
<call target="compile-${current.runtime.config}-${current.runtime.version}"
/>
</target>
<target name="compile-build" description="Compile current build configurations
for all runtime configurations">
<echo message="Compiling all runtime configurations for the
${current.build.config} build configuration." />
<available type="Framework" resource="net-1.0"
property="temp.framework.available" />
<if propertytrue="temp.framework.available">
<call target="set-net-1.0-runtime-configuration" />
<call
target="compile-${current.runtime.config}-${current.runtime.version}" />
</if>
<ifnot propertytrue="temp.framework.available">
<if propertyexists="project.build.package"
propertytrue="project.build.package">
<fail message="The .NET Framework 1.0 is not available." />
</if>
<ifnot propertyexists="project.build.package"
propertytrue="project.build.package">
<echo message="The .NET Framework 1.0 is not available. Build
skipped." />
</ifnot>
</ifnot>
<available type="Framework" resource="net-1.1"
property="temp.framework.available" />
<if propertytrue="temp.framework.available">
<call target="set-net-1.1-runtime-configuration" />
<call
target="compile-${current.runtime.config}-${current.runtime.version}" />
</if>
<ifnot propertytrue="temp.framework.available">
<if propertyexists="project.build.package"
propertytrue="project.build.package">
<fail message="The .NET Framework 1.1 is not available." />
</if>
<ifnot propertyexists="project.build.package"
propertytrue="project.build.package">
<echo message="The .NET Framework 1.1 is not available. Build
skipped." />
</ifnot>
</ifnot>
<available type="Framework" resource="mono-1.0"
property="temp.framework.available" />
<if propertytrue="temp.framework.available">
<call target="set-mono-1.0-runtime-configuration" />
<call
target="compile-${current.runtime.config}-${current.runtime.version}" />
</if>
<ifnot propertytrue="temp.framework.available">
<if propertyexists="project.build.package"
propertytrue="project.build.package">
<fail message="Mono 1.0 is not available." />
</if>
<ifnot propertyexists="project.build.package"
propertytrue="project.build.package">
<echo message="Mono 1.0 is not available. Build skipped." />
</ifnot>
</ifnot>
<available type="Framework" resource="sscli-1.0"
property="temp.framework.available" />
<if propertytrue="temp.framework.available">
<call target="set-sscli-1.0-runtime-configuration" />
<call
target="compile-${current.runtime.config}-${current.runtime.version}" />
</if>
<ifnot propertytrue="temp.framework.available">
<if propertyexists="project.build.package"
propertytrue="project.build.package">
<fail message="SSCLI 1.0 is not available." />
</if>
<ifnot propertyexists="project.build.package"
propertytrue="project.build.package">
<echo message="SSCLI 1.0 is not available. Build skipped." />
</ifnot>
</ifnot>
</target>
<target name="compile" description="Builds the current build configuration for
the current runtime configuration."
depends="check-current-build-config, check-current-runtime-config,
check-current-runtime-version">
<call target="compile-${current.runtime.config}-${current.runtime.version}"
/>
</target>
<target name="compile-net-1.0" description="Builds .NET Framework 1.0 version"
depends="set-net-1.0-runtime-configuration, check-castle-basedir">
<!-- make sure the current binaries directory exists and is cleaned -->
<call target="clean-current-bin-dir" />
<!-- initialize the temp.build.skip property to false -->
<property name="temp.build.skip" value="false" readonly="false" />
<if propertytrue="current.build.config.release">
<!-- check if the Avalon key file is available -->
<available type="File" resource="${dynproxy.basedir}/${dynproxy.key}"
property="temp.avalon.keyfile.available" />
<ifnot propertytrue="temp.avalon.keyfile.available">
<if propertyexists="project.build.package"
propertytrue="project.build.package">
<fail message="Key file not found." />
</if>
<ifnot propertyexists="project.build.package"
propertytrue="project.build.package">
<echo message="Key file not found. You can generate a key file
by running 'sn -k ${dynproxy.key}'." />
<echo message="The generated key file should be stored in the
DynamicProxy base directory." />
<echo message="The release build will be skipped." />
<property name="temp.build.skip" value="true" readonly="false" />
</ifnot>
</ifnot>
<if propertytrue="temp.avalon.keyfile.available">
<!-- copy the Avalon key file to the location where the compiler
expects it to be -->
<copy file="${dynproxy.basedir}/${dynproxy.key}"
todir="${current.bin.dir}/../../../" if="${current.build.config.release}" />
</if>
</if>
<ifnot propertytrue="temp.build.skip">
<csc nostdlib="true" noconfig="true" warnaserror="false"
target="library" debug="${current.build.debug}"
define="${current.build.defines.csc}"
output="${current.bin.dir}/${dynproxy.assembly}"
doc="${current.bin.dir}/${dynproxy.doc}">
<sources basedir="${dynproxy.src}" defaultexcludes="true">
<includes name="**/*.cs" />
<excludes name="${dynproxy.test.name}/*.*" />
</sources>
<references defaultexcludes="true">
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/mscorlib.dll"
fromPath="false" />
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.dll"
fromPath="false" />
<!-- allow for third party assemblies to be referenced by just
storing them in the lib/<framework>/<framework version>/<build configuration>
directory -->
<includes
name="lib/${current.runtime.config}/${current.runtime.version}/${current.build.config}/*.dll"
fromPath="false" />
</references>
</csc>
</ifnot>
<!-- Execute the testcases -->
<call target="run-tests" />
</target>
<target name="compile-net-1.1" description="Builds .NET Framework 1.1 version"
depends="set-net-1.1-runtime-configuration, check-castle-basedir">
<!-- make sure the current binaries directory exists and is cleaned -->
<call target="clean-current-bin-dir" />
<!-- initialize the temp.build.skip property to false -->
<property name="temp.build.skip" value="false" readonly="false" />
<if propertytrue="current.build.config.release">
<!-- check if the Avalon key file is available -->
<available type="File" resource="${dynproxy.basedir}/${dynproxy.key}"
property="temp.avalon.keyfile.available" />
<ifnot propertytrue="temp.avalon.keyfile.available">
<if propertyexists="project.build.package"
propertytrue="project.build.package">
<fail message="Key file not found." />
</if>
<ifnot propertyexists="project.build.package"
propertytrue="project.build.package">
<echo message="Key file not found. You can generate a key file
by running 'sn -k ${dynproxy.key}'." />
<echo message="The generated key file should be stored in the
DynamicProxy base directory." />
<echo message="The release build will be skipped." />
<property name="temp.build.skip" value="true" readonly="false" />
</ifnot>
</ifnot>
<if propertytrue="temp.avalon.keyfile.available">
<!-- copy the Avalon key file to the location where the compiler
expects it to be -->
<copy file="${dynproxy.basedir}/${dynproxy.key}"
todir="${current.bin.dir}/../../../" if="${current.build.config.release}" />
</if>
</if>
<ifnot propertytrue="temp.build.skip">
<csc nostdlib="true" noconfig="true" warnaserror="false"
target="library" debug="${current.build.debug}"
define="${current.build.defines.csc}"
output="${current.bin.dir}/${dynproxy.assembly}"
doc="${current.bin.dir}/${dynproxy.doc}">
<sources basedir="${dynproxy.src}" defaultexcludes="true">
<includes name="**/*.cs" />
<excludes name="${dynproxy.test.name}/*.*" />
</sources>
<references defaultexcludes="true">
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/mscorlib.dll"
fromPath="false" />
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.dll"
fromPath="false" />
<!-- allow for third party assemblies to be referenced by just
storing them in the lib/<framework>/<framework version>/<build configuration>
directory -->
<includes
name="lib/${current.runtime.config}/${current.runtime.version}/${current.build.config}/*.dll"
fromPath="false" />
</references>
</csc>
</ifnot>
<!-- Execute the testcases -->
<call target="run-tests" />
</target>
<target name="compile-mono-1.0" description="Builds Mono 1.0 version"
depends="set-mono-1.0-runtime-configuration, check-castle-basedir">
<!-- make sure the current binaries directory exists and is cleaned -->
<call target="clean-current-bin-dir" />
<!-- initialize the temp.build.skip property to false -->
<property name="temp.build.skip" value="false" readonly="false" />
<if propertytrue="current.build.config.release">
<!-- check if the Avalon key file is available -->
<available type="File" resource="${dynproxy.basedir}/${dynproxy.key}"
property="temp.avalon.keyfile.available" />
<ifnot propertytrue="temp.avalon.keyfile.available">
<if propertyexists="project.build.package"
propertytrue="project.build.package">
<fail message="Key file not found." />
</if>
<ifnot propertyexists="project.build.package"
propertytrue="project.build.package">
<echo message="Key file not found. You can generate a key file
by running 'sn -k ${dynproxy.key}'." />
<echo message="The generated key file should be stored in the
DynamicProxy base directory." />
<echo message="The release build will be skipped." />
<property name="temp.build.skip" value="true" readonly="false" />
</ifnot>
</ifnot>
<if propertytrue="temp.avalon.keyfile.available">
<!-- copy the Avalon key file to the location where the compiler
expects it to be -->
<copy file="${dynproxy.basedir}/${dynproxy.key}"
todir="${current.bin.dir}/../../../" if="${current.build.config.release}" />
</if>
</if>
<ifnot propertytrue="temp.build.skip">
<csc nostdlib="false" noconfig="true" warnaserror="false"
target="library" debug="${current.build.debug}"
define="${current.build.defines.csc}"
output="${current.bin.dir}/${dynproxy.assembly}">
<sources basedir="${dynproxy.src}" defaultexcludes="true">
<includes name="**/*.cs" />
<excludes name="${dynproxy.test.name}/*.*" />
</sources>
<references defaultexcludes="true">
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.dll"
fromPath="false" />
<!-- allow for third party assemblies to be referenced by just
storing them in the lib/<framework>/<framework version>/<build configuration>
directory -->
<includes
name="lib/${current.runtime.config}/${current.runtime.version}/${current.build.config}/*.dll"
fromPath="false" />
</references>
</csc>
</ifnot>
<!-- Execute the testcases -->
<call target="run-tests" />
</target>
<target name="compile-sscli-1.0" description="Builds SSCLI 1.0 version"
depends="set-sscli-1.0-runtime-configuration, check-castle-basedir">
<!-- make sure the current binaries directory exists and is cleaned -->
<call target="clean-current-bin-dir" />
<!-- initialize the temp.build.skip property to false -->
<property name="temp.build.skip" value="false" readonly="false" />
<if propertytrue="current.build.config.release">
<!-- check if the Avalon key file is available -->
<available type="File" resource="${dynproxy.basedir}/${dynproxy.key}"
property="temp.avalon.keyfile.available" />
<ifnot propertytrue="temp.avalon.keyfile.available">
<if propertyexists="project.build.package"
propertytrue="project.build.package">
<fail message="Key file not found." />
</if>
<ifnot propertyexists="project.build.package"
propertytrue="project.build.package">
<echo message="Key file not found. You can generate a key file
by running 'sn -k ${dynproxy.key}'." />
<echo message="The generated key file should be stored in the
DynamicProxy base directory." />
<echo message="The release build will be skipped." />
<property name="temp.build.skip" value="true" readonly="false" />
</ifnot>
</ifnot>
<if propertytrue="temp.avalon.keyfile.available">
<!-- copy the Avalon key file to the location where the compiler
expects it to be -->
<copy file="${dynproxy.basedir}/${dynproxy.key}"
todir="${current.bin.dir}/../../../" if="${current.build.config.release}" />
</if>
</if>
<ifnot propertytrue="temp.build.skip">
<csc nostdlib="true" noconfig="true" warnaserror="false"
target="library" debug="${current.build.debug}"
define="${current.build.defines.csc}"
output="${current.bin.dir}/${dynproxy.assembly}">
<sources basedir="${dynproxy.src}" defaultexcludes="true">
<includes name="**/*.cs" />
<excludes name="${dynproxy.test.name}/*.*" />
</sources>
<references defaultexcludes="true">
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/mscorlib.dll"
fromPath="false" />
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.dll"
fromPath="false" />
<!-- allow for third party assemblies to be referenced by just
storing them in the lib/<framework>/<framework version>/<build configuration>
directory -->
<includes
name="lib/${current.runtime.config}/${current.runtime.version}/${current.build.config}/*.dll"
fromPath="false" />
</references>
</csc>
</ifnot>
<!-- Execute the testcases -->
<call target="run-tests" />
</target>
<target name="compile-tests" description="Compile test cases">
<echo message="NAnt location is ${nant.location}" />
<csc nostdlib="true" noconfig="true" warnaserror="false" target="library"
debug="${current.build.debug}"
define="${current.build.defines.csc}"
output="${current.bin.dir}/${dynproxy.test.assembly}">
<sources basedir="${dynproxy.test.src}" defaultexcludes="true">
<includes name="**/*.cs" />
</sources>
<references defaultexcludes="true">
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/mscorlib.dll"
fromPath="false" />
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.dll"
fromPath="false" />
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.Runtime.Remoting.dll"
fromPath="false" />
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.Data.dll"
fromPath="false" />
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.Web.dll"
fromPath="false" />
<includes
name="${nant.settings.currentframework.frameworkassemblydirectory}/System.Xml.dll"
fromPath="false" />
<includes name="${nant.location}/nunit.framework.dll"
fromPath="false" />
<includes name="${current.bin.dir}/${dynproxy.assembly}"
fromPath="false" />
<!-- allow for third party assemblies to be referenced by just
storing them in the lib/<framework>/<framework version>/<build configuration>
directory -->
<includes
name="lib/${current.runtime.config}/${current.runtime.version}/${current.build.config}/*.dll"
fromPath="false" />
</references>
</csc>
</target>
</project>
1.1 avalon-sandbox/avalon-net/DynamicProxy/DynamicProxy-helper.build
Index: DynamicProxy-helper.build
===================================================================
<?xml version="1.0" ?>
<!--
Copyright 2003-2004 The Apache Software Foundation
Licensed 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="dynamicproxy-helper" xmlnds="http://tempuri.org/nant-vs.xsd">
<target name="check-bin-dir">
<ifnot propertyexists="bin.dir">
<property name="bin.dir" value="bin" readonly="false" />
</ifnot>
<mkdir dir="${bin.dir}" />
</target>
<target name="check-build-debug">
<ifnot propertyexists="build.debug">
<fail message="The build debug setting has not been specified." />
</ifnot>
</target>
<target name="check-build-defines">
<ifnot propertyexists="build.defines.csc">
<fail message="The build defines for the csc task have not been
specified." />
</ifnot>
<ifnot propertyexists="build.defines.jsc">
<fail message="The build defines for the jsc task have not been
specified." />
</ifnot>
<ifnot propertyexists="build.defines.vbc">
<fail message="The build defines for the vbc task have not been
specified." />
</ifnot>
<ifnot propertyexists="build.defines.vjc">
<fail message="The build defines for the vjc task have not been
specified." />
</ifnot>
<ifnot propertyexists="build.defines.cl">
<fail message="The build defines for the cl task have not been
specified." />
</ifnot>
</target>
<target name="check-doc-dir">
<ifnot propertyexists="doc.dir">
<property name="doc.dir" value="doc" readonly="false" />
</ifnot>
<mkdir dir="${doc.dir}" />
</target>
<target name="check-sdkdoc-dir" depends="check-doc-dir">
<ifnot propertyexists="sdkdoc.dir">
<property name="sdkdoc.dir" value="${doc.dir}/sdk" readonly="false" />
</ifnot>
<mkdir dir="${sdkdoc.dir}" />
</target>
<target name="check-sdkdoc-debug">
<ifnot propertyexists="sdkdoc.debug">
<fail message="The sdk documentation debug setting has not been
specified." />
</ifnot>
</target>
<target name="check-current-bin-dir">
<ifnot propertyexists="current.bin.dir">
<fail message="The current binaries directory has not been specified." />
</ifnot>
<mkdir dir="${current.bin.dir}" />
</target>
<target name="check-current-build-debug">
<ifnot propertyexists="current.build.debug">
<fail message="The current build debug setting has not been specified."
/>
</ifnot>
</target>
<target name="check-current-build-defines">
<ifnot propertyexists="current.build.defines.csc">
<fail message="The current build defines for the csc task have not been
specified." />
</ifnot>
<ifnot propertyexists="current.build.defines.jsc">
<fail message="The current build defines for the jsc task have not been
specified." />
</ifnot>
<ifnot propertyexists="current.build.defines.vbc">
<fail message="The current build defines for the vbc task have not been
specified." />
</ifnot>
<ifnot propertyexists="current.build.defines.vjc">
<fail message="The current build defines for the vjc task have not been
specified." />
</ifnot>
<ifnot propertyexists="current.build.defines.cl">
<fail message="The current build defines for the cl task have not been
specified." />
</ifnot>
</target>
<target name="check-current-sdkdoc-dir">
<ifnot propertyexists="current.sdkdoc.dir">
<fail message="The current sdk document directory has not been
specified." />
</ifnot>
<mkdir dir="${sdkdoc.dir}" />
</target>
<target name="check-current-sdkdoc-debug">
<ifnot propertyexists="current.sdkdoc.debug">
<fail message="The curernt sdk documentation debug setting has not been
specified." />
</ifnot>
</target>
<target name="check-current-runtime-config">
<ifnot propertyexists="current.runtime.config">
<fail message="The current runtime configuration has not been
specified." />
</ifnot>
</target>
<target name="check-current-runtime-version">
<ifnot propertyexists="current.runtime.config">
<fail message="The current runtime version has not been specified." />
</ifnot>
</target>
<target name="check-current-runtime-description">
<ifnot propertyexists="current.runtime.description">
<ifnot propertyexists="project.runtime.description">
<fail message="The runtime description has not been specified and no
default runtime description is available." />
</ifnot>
<if propertyexists="project.runtime.description">
<property name="current.runtime.description"
value="${project.runtime.description}" readonly="false" />
</if>
</ifnot>
</target>
<target name="check-current-build-config">
<ifnot propertyexists="current.build.config">
<ifnot propertyexists="project.build.config">
<fail message="The build configuration has not been specified and no
default build configuration is available." />
</ifnot>
<if propertyexists="project.build.config">
<property name="current.build.config"
value="${project.build.config}" readonly="false" />
</if>
</ifnot>
</target>
<target name="check-castle-basedir">
<ifnot propertyexists="dynproxy.basedir">
<fail message="The castle base directory has not been specified." />
</ifnot>
</target>
<target name="check-castle-assembly" depends="check-current-runtime-config,
check-current-runtime-version, check-current-build-config, check-castle-basedir">
<available type="File"
resource="${dynproxy.basedir}/bin/${current.runtime.config}/${current.runtime.version}/${current.build.config}/DynamicProxy.dll"
property="temp.dynproxy.assembly.available" />
<ifnot propertyexists="temp.dynproxy.assembly.available">
<fail message="The '${current.build.config}' assembly for runtime
'${current.runtime.config}-${current.runtime.version}' is not available." />
</ifnot>
</target>
<target name="check-current-runtime-available"
depends="check-current-runtime-config, check-current-runtime-version">
<available type="Framework"
resource="${current.runtime.config}-${current.runtime.version}"
property="current.runtime.available" />
</target>
<!-- Targets for cleaning up -->
<target name="clean-current-bin-dir" depends="check-current-bin-dir"
description="Cleans the current binaries directory">
<echo message="Cleaning the ${current.bin.dir} binaries directory." />
<available type="Directory" resource="${current.bin.dir}"
property="temp.current.bin.dir.available" />
<if propertyexists="temp.current.bin.dir.available">
<delete dir="${current.bin.dir}" />
</if>
<mkdir dir="${current.bin.dir}" />
</target>
<target name="clean-current-sdkdoc-dir" depends="check-current-sdkdoc-dir"
description="cleaning the current SDK documentation directory">
<echo message="Cleaning the ${current.sdkdoc.dir} SDK documentation
directory." />
<available type="Directory" resource="${current.sdkdoc.dir}"
property="temp.current.sdkdoc.dir.available" />
<if propertyexists="temp.current.sdkdoc.dir.available">
<delete dir="${current.sdkdoc.dir}" />
</if>
<mkdir dir="${current.sdkdoc.dir}" />
</target>
<!-- Targets for setting up the environment -->
<target name="set-build-configuration" depends="check-current-build-config">
<!--<if test="${not
nant::target-exists('set-${current.build.config}-build-configuration">-->
<ifnot targetexists="set-${current.build.config}-build-configuration">
<fail message="The ${current.build.config} build configuration is not
supported by DynamicProxy." />
</ifnot>
<!--</if>-->
<call target="set-${current.build.config}-build-configuration" />
</target>
<target name="set-debug-build-configuration">
<property name="build.debug" value="true" readonly="false" />
<property name="build.defines.csc" value="DEBUG,TRACE" readonly="false" />
<property name="build.defines.jsc" value="DEBUG,TRACE" readonly="false" />
<property name="build.defines.vbc" value="DEBUG=True,TRACE=True"
readonly="false" />
<property name="build.defines.vjc" value="DEBUG,TRACE" readonly="false" />
<property name="build.defines.cl" value="/D _DEBUG" readonly="false" />
<property name="sdkdoc.debug" value="false" readonly="false" />
<property name="current.build.config" value="debug" readonly="false" />
<call target="set-build-configuration-flags" />
</target>
<target name="set-release-build-configuration">
<property name="build.debug" value="false" readonly="false" />
<property name="build.defines.csc" value="TRACE,STRONG" readonly="false" />
<property name="build.defines.jsc" value="TRACE,STRONG" readonly="false" />
<property name="build.defines.vbc" value="TRACE=True,STRONG=True"
readonly="false" />
<property name="build.defines.vjc" value="TRACE,STRONG" readonly="false" />
<property name="build.defines.cl" value="/D STRONG" readonly="false" />
<property name="sdkdoc.debug" value="false" readonly="false" />
<property name="current.build.config" value="release" readonly="false" />
<call target="set-build-configuration-flags" />
</target>
<target name="set-build-configuration-flags"
depends="check-current-build-config">
<property name="current.build.config.debug" value="false" readonly="false" />
<property name="current.build.config.release" value="false" readonly="false"
/>
<property name="current.build.config.${current.build.config}" value="true"
readonly="false" />
</target>
<target name="set-runtime-configuration" depends="check-current-build-config">
<ifnot propertyexists="current.runtime.config">
<ifnot propertyexists="nant.settings.currentframework">
<fail message="No runtime configuration was specified and the
default NAnt runtime is not available." />
</ifnot>
<!-- <if test="${not
nant::target-exists('set-${nant.settings.currentframework}-runtime-configuration"> -->
<ifnot
targetexists="set-${nant.settings.currentframework}-runtime-configuration">
<fail message="No runtime configuration was specified and the
current runtime (${nant.settings.currentframework}) is not supported by
Avalon-DynamicProxy." />
<!-- </if> -->
</ifnot>
<call
target="set-${nant.settings.currentframework}-runtime-configuration" />
</ifnot>
<ifnot propertyexists="current.runtime.version">
<ifnot propertyexists="nant.settings.currentframework">
<fail message="No runtime configuration was specified and the
default NAnt runtime is not available." />
</ifnot>
<!-- <if test="${not
nant::target-exists('set-${nant.settings.currentframework}-runtime-configuration"> -->
<ifnot
targetexists="set-${nant.settings.currentframework}-runtime-configuration">
<fail message="No runtime configuration was specified and the
current runtime (${nant.settings.currentframework}) is not supported by
Avalon-DynamicProxy." />
</ifnot>
<!-- </if> -->
<call
target="set-${nant.settings.currentframework}-runtime-configuration" />
</ifnot>
<!-- <if test="${not
nant::target-exists('set-${current.runtime.config}-${current.runtime.version}-runtime-configuration">
-->
<ifnot
targetexists="set-${current.runtime.config}-${current.runtime.version}-runtime-configuration">
<fail message="The ${current.runtime.config}-${current.runtime.version}
runtime is not supported by Avalon-DynamicProxy." />
</ifnot>
<!-- </if> -->
<call
target="set-${current.runtime.config}-${current.runtime.version}-runtime-configuration"
/>
</target>
<target name="set-net-1.0-runtime-configuration" depends="check-bin-dir,
check-sdkdoc-dir, check-sdkdoc-debug, check-current-build-config, check-build-debug,
check-build-defines">
<property name="current.runtime.config" value="net" readonly="false" />
<property name="current.runtime.version" value="1.0" readonly="false" />
<property name="current.runtime.description" value="Microsoft .NET Framework
1.0" readonly="false" />
<property name="current.build.debug" value="${build.debug}" readonly="false"
/>
<property name="current.build.defines.csc"
value="${build.defines.csc},NET,NET_1_0" readonly="false" />
<property name="current.build.defines.jsc"
value="${build.defines.jsc},NET,NET_1_0" readonly="false" />
<property name="current.build.defines.vbc"
value="${build.defines.vbc},NET=True,NET_1_0=True"
readonly="false" />
<property name="current.build.defines.vjc"
value="${build.defines.vjc},NET,NET_1_0" readonly="false" />
<property name="current.build.defines.cl" value="${build.defines.cl} /D NET
/D NET_1_0" readonly="false" />
<property name="current.bin.dir"
value="${bin.dir}/${current.runtime.config}/${current.runtime.version}/${current.build.config}"
readonly="false" />
<property name="current.sdkdoc.dir"
value="${sdkdoc.dir}/${current.runtime.config}/${current.runtime.version}"
readonly="false" />
<property name="current.sdkdoc.debug" value="${sdkdoc.debug}"
readonly="false" />
<property name="nant.settings.currentframework"
value="${current.runtime.config}-${current.runtime.version}" />
</target>
<target name="set-net-1.1-runtime-configuration" depends="check-bin-dir,
check-sdkdoc-dir, check-sdkdoc-debug, check-current-build-config, check-build-debug,
check-build-defines">
<property name="current.runtime.config" value="net" readonly="false" />
<property name="current.runtime.version" value="1.1" readonly="false" />
<property name="current.runtime.description" value="Microsoft .NET Framework
1.1" readonly="false" />
<property name="current.build.debug" value="${build.debug}" readonly="false"
/>
<property name="current.build.defines.csc"
value="${build.defines.csc},NET,NET_1_1" readonly="false" />
<property name="current.build.defines.jsc"
value="${build.defines.jsc},NET,NET_1_1" readonly="false" />
<property name="current.build.defines.vbc"
value="${build.defines.vbc},NET=True,NET_1_1=True"
readonly="false" />
<property name="current.build.defines.vjc"
value="${build.defines.vjc},NET,NET_1_1" readonly="false" />
<property name="current.build.defines.cl" value="${build.defines.cl} /D NET
/D NET_1_1" readonly="false" />
<property name="current.bin.dir"
value="${bin.dir}/${current.runtime.config}/${current.runtime.version}/${current.build.config}"
readonly="false" />
<property name="current.sdkdoc.dir"
value="${sdkdoc.dir}/${current.runtime.config}/${current.runtime.version}"
readonly="false" />
<property name="current.sdkdoc.debug" value="${sdkdoc.debug}"
readonly="false" />
<property name="nant.settings.currentframework"
value="${current.runtime.config}-${current.runtime.version}" />
</target>
<target name="set-netcf-1.0-runtime-configuration" depends="check-bin-dir,
check-sdkdoc-dir, check-sdkdoc-debug, check-current-build-config, check-build-debug,
check-build-defines">
<property name="current.runtime.config" value="netcf" readonly="false" />
<property name="current.runtime.version" value="1.0" readonly="false" />
<property name="current.runtime.description" value="Microsoft .NET Compact
Framework 1.0"
readonly="false" />
<property name="current.build.debug" value="${build.debug}" readonly="false"
/>
<property name="current.build.defines.csc"
value="${build.defines.csc},NETCF,NETCF_1_0" readonly="false" />
<property name="current.build.defines.jsc"
value="${build.defines.jsc},NETCF,NETCF_1_0" readonly="false" />
<property name="current.build.defines.vbc"
value="${build.defines.vbc},NETCF=True" readonly="false" />
<property name="current.build.defines.vjc"
value="${build.defines.vjc},NETCF" readonly="false" />
<property name="current.build.defines.cl" value="${build.defines.cl} /D
NETCF /D NETCF_1_0"
readonly="false" />
<property name="current.bin.dir"
value="${bin.dir}/${current.runtime.config}/${current.runtime.version}/${current.build.config}"
readonly="false" />
<property name="current.sdkdoc.dir"
value="${sdkdoc.dir}/${current.runtime.config}/${current.runtime.version}"
readonly="false" />
<property name="current.sdkdoc.debug" value="${sdkdoc.debug}"
readonly="false" />
<property name="nant.settings.currentframework"
value="${current.runtime.config}-${current.runtime.version}" />
</target>
<target name="set-mono-1.0-runtime-configuration" depends="check-bin-dir,
check-sdkdoc-dir, check-sdkdoc-debug, check-current-build-config, check-build-debug,
check-build-defines">
<property name="current.runtime.config" value="mono" readonly="false" />
<property name="current.runtime.version" value="1.0" readonly="false" />
<property name="current.runtime.description" value="Mono 1.0"
readonly="false" />
<property name="current.build.debug" value="${build.debug}" readonly="false"
/>
<property name="current.build.defines.csc"
value="${build.defines.csc},MONO,MONO_1_0" readonly="false" />
<property name="current.build.defines.jsc"
value="${build.defines.jsc},MONO,MONO_1_0" readonly="false" />
<property name="current.build.defines.vbc"
value="${build.defines.vbc},MONO=True,MONO_1_0=True"
readonly="false" />
<property name="current.build.defines.vjc"
value="${build.defines.vjc},MONO,MONO_1_0" readonly="false" />
<property name="current.build.defines.cl" value="${build.defines.cl} /D MONO
/D MONO_1_0"
readonly="false" />
<property name="current.bin.dir"
value="${bin.dir}/${current.runtime.config}/${current.runtime.version}/${current.build.config}"
readonly="false" />
<property name="current.sdkdoc.dir"
value="${sdkdoc.dir}/${current.runtime.config}/${current.runtime.version}"
readonly="false" />
<property name="current.sdkdoc.debug" value="${sdkdoc.debug}"
readonly="false" />
<property name="nant.settings.currentframework"
value="${current.runtime.config}-${current.runtime.version}" />
</target>
<target name="set-sscli-1.0-runtime-configuration" depends="check-bin-dir,
check-sdkdoc-dir, check-sdkdoc-debug, check-current-build-config, check-build-debug,
check-build-defines">
<property name="current.runtime.config" value="sscli" readonly="false" />
<property name="current.runtime.version" value="1.0" readonly="false" />
<property name="current.runtime.description" value="Microsoft Shared Source
CLI 1.0" readonly="false" />
<property name="current.build.debug" value="${build.debug}" readonly="false"
/>
<property name="current.build.defines.csc"
value="${build.defines.csc},SSCLI,SSCLI_1_0" readonly="false" />
<property name="current.build.defines.jsc"
value="${build.defines.jsc},SSCLI,SSCLI_1_0" readonly="false" />
<property name="current.build.defines.vbc"
value="${build.defines.vbc},SSCLI=True,SSCLI_1_0=True"
readonly="false" />
<property name="current.build.defines.vjc"
value="${build.defines.vjc},SSCLI,SSCLI_1_0" readonly="false" />
<property name="current.build.defines.cl" value="${build.defines.cl} /D
SSCLI /D SSCLI_1_0"
readonly="false" />
<property name="current.bin.dir"
value="${bin.dir}/${current.runtime.config}/${current.runtime.version}/${current.build.config}"
readonly="false" />
<property name="current.sdkdoc.dir"
value="${sdkdoc.dir}/${current.runtime.config}/${current.runtime.version}"
readonly="false" />
<property name="current.sdkdoc.debug" value="${sdkdoc.debug}"
readonly="false" />
<property name="nant.settings.currentframework"
value="${current.runtime.config}-${current.runtime.version}" />
</target>
</project>
1.1 avalon-sandbox/avalon-net/DynamicProxy/DynamicProxy.build
Index: DynamicProxy.build
===================================================================
<?xml version="1.0" ?>
<!--
Copyright 2003-2004 The Apache Software Foundation
Licensed 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="dynamicproxy" default="compile-all"
xmlnds="http://tempuri.org/nant-vs.xsd">
<!-- Global project settings -->
<property name="dynproxy.basedir" value="." readonly="false" />
<property name="dynproxy.src" value="${dynproxy.basedir}"
readonly="false" />
<property name="dynproxy.doc" value="Apache.Avalon.DynamicProxy.xml"
readonly="false" />
<property name="dynproxy.test.name" value="DynamicProxyTest"
readonly="false" />
<property name="dynproxy.test.src"
value="${dynproxy.basedir}/${dynproxy.test.name}" readonly="false" />
<property name="dynproxy.assembly" value="Apache.Avalon.DynamicProxy.dll"
readonly="true" />
<property name="dynproxy.test.assembly"
value="Apache.Avalon.DynamicProxy.Test.dll" readonly="true" />
<property name="dynproxy.key" value="../ApacheAvalon.snk"
readonly="true" />
<property name="project.build.config" value="debug" readonly="false" />
<property name="project.build.package" value="false" readonly="false" />
<include buildfile="${dynproxy.basedir}/DynamicProxy-helper.build" />
<include buildfile="${dynproxy.basedir}/DynamicProxy-compilations.build" />
<call target="set-build-configuration" />
<call target="set-runtime-configuration" />
<target name="compile-all" description="Compile all build configurations for all
runtime configurations">
<echo message="Compiling all build configurations for all runtime
configurations." />
<call target="set-debug-build-configuration" />
<call target="compile-build" />
<call target="set-release-build-configuration" />
<call target="compile-build" />
</target>
<target name="run-tests" description="Run the test-cases."
depends="check-castle-basedir">
<echo message="Compiling all test cases." />
<call target="compile-tests" />
<copy todir="${current.bin.dir}">
<fileset basedir="${nant.location}">
<includes name="nunit.*.dll" />
</fileset>
</copy>
<nunit2 haltonerror="true" haltonfailure="true" failonerror="true">
<formatter type="Plain" />
<test assemblyname="${current.bin.dir}/${dynproxy.test.assembly}"
fork="true" />
</nunit2>
<delete>
<fileset basedir="${current.bin.dir}">
<includes name="nunit.*.dll" />
<includes name="*Test.*" />
</fileset>
</delete>
</target>
</project>
1.1 avalon-sandbox/avalon-net/DynamicProxy/README.txt
Index: README.txt
===================================================================
-------------------------------------------------------------------------
Copyright 2003-2004 The Apache Software Foundation
Licensed 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.
-------------------------------------------------------------------------
To Build DynamicProxy you'll need:
NAnt -> http://nant.sourceforge.net
(Tested against version 0.84)
NUnit is not a requirement as NAnt already includes it.
We cannot provide them for you due to licensing issues.
Nant is a 100% .NET implmented build tool inspired by
ANT (http://ant.apache.org). It is licensed under the
GPL, but if you install it separately as a tool (preferred)
then all is well. NUnit is a testing framework inspired
by JUnit (http://junit.org), and has an installer for
you.
Once your environment is set up you can type:
> build.cmd -defaultframework:?????? compile
Where ?????? is one of the following:
mono-1.0 for Mono 1.0
net-1.1 for Microsoft .NET Framework 1.1
net-1.0 for Microsoft .NET Framework 1.0
sscli-1.0 for Shared CLI 1.0
For example:
> build.cmd -defaultframework:net-1.1 compile
You may also type:
> build.cmd
To build everything that is supported by your machine configuration.
Enjoy!
-- The Apache Avalon Team
1.1 avalon-sandbox/avalon-net/DynamicProxy/WARNING.txt
Index: WARNING.txt
===================================================================
***************************** W A R N I N G **********************************
All user accessible points in this software package are to be considered
"alpha". This means that the developer team is not investing _any_ effort
in providing back compatibility between alpha releases.
This software will continue to be released as "alpha" until both code,
schemas and APIs will be considered stable.
Until then, there will be no warranty that newer versions will maintain back
compatibility even in the most simple cases.
On the other hand, once "beta" status is reached, back incompatible changes
will be made only if absolutely necessary to reach "final" status.
The Avalon development team understands the importance of reliable
software as well as the importance of protecting user investiments by the
creation of a solid development platform that doesn't change.
On the other hand, being the Avalon project a pioneer in many fields, this
cannot be guaranteed before a final status is reached for the software.
Until then, no effort will be provided to guarantee back compatibility.
You have been warned.
***************************** W A R N I N G **********************************
1.1 avalon-sandbox/avalon-net/DynamicProxy/build.cmd
Index: build.cmd
===================================================================
@ECHO OFF
REM Setup the build file
IF EXIST nant.build (
set BUILD_FILE=nant.build
) ELSE (
set BUILD_FILE=DynamicProxy.build
)
REM Check for Mono install, update path to include mono libs
IF EXIST %WINDIR%\monobasepath.bat (
CALL %WINDIR%\monobasepath.bat
REM Remove quotes from path
SET CLEAN_MONO_BASEPATH=!MONO_BASEPATH:"=!
SET PATH="!CLEAN_MONO_BASEPATH!\bin\;!CLEAN_MONO_BASEPATH!\lib\;%path%"
)
REM echo PATH is %PATH%
nant.exe "-buildfile:%BUILD_FILE%" %1 %2 %3 %4 %5 %6 %7 %8
GOTO End
REM ------------------------------------------
REM Expand a string to a full path
REM ------------------------------------------
:FullPath
set RESULT=%~f1
goto :EOF
REM ------------------------------------------
REM Compute the current directory
REM given a path to this batch script.
REM ------------------------------------------
:ComputeBase
set RESULT=%~dp1
REM Remove the trailing \
set RESULT=%RESULT:~0,-1%
Call :FullPath %RESULT%
goto :EOF
:End
ENDLOCAL
EXIT /B 0
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]