diff options
author | Arnaud Simon <arnaudsimon@apache.org> | 2008-10-17 12:51:51 +0000 |
---|---|---|
committer | Arnaud Simon <arnaudsimon@apache.org> | 2008-10-17 12:51:51 +0000 |
commit | b5306d0b1fad54f7094df8e8ee4c26c2a1a748b8 (patch) | |
tree | 8aae6cd0440721b21fd5dbdf670906f7a68b03be /qpid/cc | |
parent | 825b81a14b54f02ebe415366ac66205b00429ab5 (diff) | |
download | qpid-python-b5306d0b1fad54f7094df8e8ee4c26c2a1a748b8.tar.gz |
qpid-1371: added .net cc support + cc .net interop support
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@705588 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cc')
-rw-r--r-- | qpid/cc/README | 30 | ||||
-rw-r--r-- | qpid/cc/config.xml | 5 | ||||
-rw-r--r-- | qpid/cc/config/dotnet-trunk.xml | 63 | ||||
-rw-r--r-- | qpid/cc/scripts/dotnetbuild.sh | 21 | ||||
-rwxr-xr-x | qpid/cc/scripts/verify | 2 | ||||
-rwxr-xr-x | qpid/cc/scripts/verify_all | 42 |
6 files changed, 159 insertions, 4 deletions
diff --git a/qpid/cc/README b/qpid/cc/README index b0e3385d6d..8d1286f6d7 100644 --- a/qpid/cc/README +++ b/qpid/cc/README @@ -20,15 +20,41 @@ Download CruiseControl from: http://cruisecontrol.sourceforge.net/ Set system variables ****************** -Prior to use CruiseControl you'll need to set two system variables: +Prior to use CruiseControl you'll need to set three system variables: Variable Value CC_HOME path to your qpid project, for example /home/foo/projects/qpid CPPSTORE_HOME path to your C++ store, for example /home/foo/projects/bdbstore-cpp +NANT_HOME path to the nant directory -- only required for .net client -- + (nant can be downloaded from http://nant.sourceforge.net/) Edit the file CC_HOME/config.properties and set the properties so to match your system requirements. Notes - * the cpp store can be checked out from: https://svn.jboss.org/repos/rhmessaging/store/trunk/cpp + * the cpp store can be checked out from: https://svn.jboss.org/repos/rhmessaging/store/trunk/cpp * Only unix scrips are currently provided + * + + +****************** +Installing Mono +****************** +For building the .net client on a Linux platform you need to install Mono. +Mono website is: http://www.mono-project.com/Main_Page +Here are the instruction for a RHEL5 platform: + +Create the file "/etc/yum.repos.d/mono.repo" and add the following lines: + +[Mono] +name=Mono Stack (RHEL_5) +type=rpm-md +baseurl=http://download.opensuse.org/repositories/Mono/RHEL_5/ +gpgcheck=1 +gpgkey=http://download.opensuse.org/repositories/Mono/RHEL_5/repodata/repomd.xml.key +enabled=1 + +Enter the following command to install Mono: + +# yum install mono-complete + ****************** Running CruiseControl diff --git a/qpid/cc/config.xml b/qpid/cc/config.xml index 2436cec1ca..ba89acc511 100644 --- a/qpid/cc/config.xml +++ b/qpid/cc/config.xml @@ -22,13 +22,16 @@ under the License. <property environment="env" toupper="true"/>
<!-- Set a collection of global properties from the properties file "config.properties" -->
- <property file="config.properties"/>
+ <property file="${env.CC_HOME}/cc/config.properties"/>
<include.projects file="./config/cpp-trunk.xml"/>
<include.projects file="./config/java-trunk.xml"/>
+ <include.projects file="./config/dotnet-trunk.xml"/>
<include.projects file="./config/bdbstore-cpp-trunk.xml"/>
<include.projects file="./config/cpp-perftests.xml"/>
<include.projects file="./config/example-automation.xml"/>
<include.projects file="./config/java-perftests.xml"/>
<include.projects file="./config/java-jmstck.xml"/>
</cruisecontrol>
+
+
diff --git a/qpid/cc/config/dotnet-trunk.xml b/qpid/cc/config/dotnet-trunk.xml new file mode 100644 index 0000000000..0d922967e4 --- /dev/null +++ b/qpid/cc/config/dotnet-trunk.xml @@ -0,0 +1,63 @@ +<!--
+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.
+-->
+<cruisecontrol>
+ <project name="qpid-dotnet-trunk"
+ buildafterfailed="false">
+
+ <listeners>
+ <currentbuildstatuslistener file="logs/${project.name}/status.txt"/>
+ </listeners>
+
+ <bootstrappers>
+ <svnbootstrapper localWorkingCopy="../bin" />
+ <svnbootstrapper localWorkingCopy="../dotnet/client-010" />
+ <svnbootstrapper localWorkingCopy="../specs" />
+ </bootstrappers>
+
+ <modificationset quietperiod="30">
+ <svn localWorkingCopy="../bin"/>
+ <svn localWorkingCopy="../dotnet/client-010"/>
+ <svn localWorkingCopy="../specs"/>
+ </modificationset>
+
+ <schedule interval="3600">
+ <!-- generates code from specs -->
+ <ant target="build"
+ uselogger="false"
+ antworkingdir="../dotnet/client-010/gentool">
+ </ant>
+
+ <exec timeout="1800"
+ command="/bin/bash"
+ args="../cc/scripts/dotnetbuild.sh"
+ workingdir="../dotnet/client-010" />
+ </schedule>
+
+ <publishers>
+ <email subjectprefix="${mail.subject}: ${project.name}" mailhost="${mail.host}"
+ returnaddress="${mail.returnaddress}"
+ buildresultsurl="http://${env.HOSTNAME}:8080/buildresults/${project.name}"
+ skipusers="false"
+ reportsuccess="fixes"
+ spamwhilebroken="true">
+ <always address="${mail.list}"/>
+ </email>
+ </publishers>
+ </project>
+</cruisecontrol>
diff --git a/qpid/cc/scripts/dotnetbuild.sh b/qpid/cc/scripts/dotnetbuild.sh new file mode 100644 index 0000000000..51d2110757 --- /dev/null +++ b/qpid/cc/scripts/dotnetbuild.sh @@ -0,0 +1,21 @@ +#!/bin/bash -x +########################################################### +#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. +########################################################### + +mono $NANT_HOME/bin/NAnt.exe test
\ No newline at end of file diff --git a/qpid/cc/scripts/verify b/qpid/cc/scripts/verify index c183fee323..35191b17c9 100755 --- a/qpid/cc/scripts/verify +++ b/qpid/cc/scripts/verify @@ -18,6 +18,7 @@ #under the License. ########################################################### +export DOTNET_EXAMPLES=$CC_HOME/dotnet/client-010/bin/mono-2.0/debug export CLASSPATH=`find "$CC_HOME/java/build/lib" -name '*.jar' | tr '\n' ":"` export CPP=$CC_HOME/cpp/examples export JAVA=$CC_HOME/java/client/example/src/main/java @@ -77,6 +78,7 @@ verify() { else dir=`dirname $1`; script=`basename $1`; fi cd $dir || return 1 rm -f *.out + echo "Running: $dir/$script" { source ./$script && diff -ac $script.out $script.in ; } || fail test -z "$FAIL" && rm -f *.out return $FAIL diff --git a/qpid/cc/scripts/verify_all b/qpid/cc/scripts/verify_all index fcb38f3709..8d3ec669a7 100755 --- a/qpid/cc/scripts/verify_all +++ b/qpid/cc/scripts/verify_all @@ -35,7 +35,7 @@ run_broker() echo "Starting C++ broker" echo "******************************************************" echo "" - $CC_HOME/cpp/src/qpidd -t -d --auth no --no-data-dir --log-output $CC_HOME/broker.log + $CC_HOME/cpp/src/qpidd -t -d --auth no --no-data-dir --log-to-file $CC_HOME/broker.log } stop_broker() @@ -118,9 +118,49 @@ echo "-----------</Running Java/Python combination>--------" echo "" } +run_dotnet_dotnet() +{ +echo "-----------<Running .Net/.Net combination>---------" +verify $CC_HOME/dotnet/client-010/examples/ "verify" "*.svn" +echo "-----------</Running .Net/.Net combination>--------" +echo "" +} + +run_cpp_dotnet() +{ +echo "-----------<Running C++/.Net combination>---------" +verify $CC_HOME/dotnet/client-010/examples/ "verify_cpp_dotnet" "*.svn" +verify $CC_HOME/dotnet/client-010/examples/ "verify_dotnet_cpp" "*.svn" +echo "-----------</Running C++/.Net combination>--------" +echo "" +} + +run_java_dotnet() +{ +echo "-----------<Running Java/.Net combination>---------" +verify $CC_HOME/dotnet/client-010/examples/ "verify_java_dotnet" "*.svn" +verify $CC_HOME/dotnet/client-010/examples/ "verify_dotnet_java" "*.svn" +echo "-----------</Running Java/.Net combination>--------" +echo "" +} + +run_python_dotnet() +{ +echo "-----------<Running Python/.Net combination>---------" +verify $CC_HOME/dotnet/client-010/examples/ "verify_python_dotnet" "*.svn" +verify $CC_HOME/dotnet/client-010/examples/ "verify_dotnet_python" "*.svn" +echo "-----------</Running Python/.Net combination>--------" +echo "" +} + + run_python_python run_python_cpp_comb run_cpp_cpp run_java_java run_java_cpp_comb run_java_python_comb +run_dotnet_dotnet +run_cpp_dotnet +run_java_dotnet +run_python_dotnet
\ No newline at end of file |