You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ro...@apache.org on 2007/07/27 09:33:02 UTC

svn commit: r560132 - in /incubator/tuscany/cpp/sca: ./ antscripts/ runtime/core/src/ runtime/extensions/cpp/ runtime/extensions/php/ runtime/extensions/python/ runtime/extensions/rest/ runtime/extensions/ruby/ runtime/extensions/sca/ runtime/extension...

Author: robbinspg
Date: Fri Jul 27 00:32:58 2007
New Revision: 560132

URL: http://svn.apache.org/viewvc?view=rev&rev=560132
Log:
TUSCANY-1438 Apply Brady's patch update 6

Modified:
    incubator/tuscany/cpp/sca/antscripts/compile-targets.xml
    incubator/tuscany/cpp/sca/antscripts/platform.properties
    incubator/tuscany/cpp/sca/antscripts/system.xml
    incubator/tuscany/cpp/sca/build.xml
    incubator/tuscany/cpp/sca/runtime/core/src/build.xml
    incubator/tuscany/cpp/sca/runtime/extensions/cpp/build.xml
    incubator/tuscany/cpp/sca/runtime/extensions/php/build.xml
    incubator/tuscany/cpp/sca/runtime/extensions/python/build.xml
    incubator/tuscany/cpp/sca/runtime/extensions/rest/build.xml
    incubator/tuscany/cpp/sca/runtime/extensions/ruby/build.xml
    incubator/tuscany/cpp/sca/runtime/extensions/sca/build.xml
    incubator/tuscany/cpp/sca/runtime/extensions/ws/build.xml

Modified: incubator/tuscany/cpp/sca/antscripts/compile-targets.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/antscripts/compile-targets.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/antscripts/compile-targets.xml (original)
+++ incubator/tuscany/cpp/sca/antscripts/compile-targets.xml Fri Jul 27 00:32:58 2007
@@ -186,6 +186,37 @@
   </macrodef>
 
   <!--
+    Install a library
+    @param lib - library to install
+    @param srcdir - directory of file to install
+    @param destdir - Where to install the file
+    @param executable - set permissions to executable, defaults true
+  -->
+  <macrodef name="cpp-install-lib">
+    <attribute name="lib"/>
+    <attribute name="srcdir" default="."/>
+    <attribute name="destrootdir"/>
+    <attribute name="version" default="${tuscanySCA.library.version}"/>
+    <sequential>
+      <cpp-install-file
+          srcfile="${lib.prefix}@{lib}${lib.ext}"
+          srcdir="@{srcdir}"
+          destfile="${lib.prefix}@{lib}${lib.ext}@{version}"
+          destdir="@{destrootdir}/lib"/>
+      <if>
+        <os family="windows"/>
+        <then>
+          <cpp-install-file
+              srcfile="${lib.prefix}@{lib}${dll.ext}"
+              srcdir="@{srcdir}"
+              destfile="${lib.prefix}@{lib}${dll.ext}@{version}"
+              destdir="@{destrootdir}/bin"/>
+        </then>
+      </if>
+    </sequential>
+  </macrodef>
+
+  <!--
     Create a symlink on unix and mac only
     @param lib - library file to install
     @param srclibdir - location of library files to install

Modified: incubator/tuscany/cpp/sca/antscripts/platform.properties
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/antscripts/platform.properties?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/antscripts/platform.properties (original)
+++ incubator/tuscany/cpp/sca/antscripts/platform.properties Fri Jul 27 00:32:58 2007
@@ -16,6 +16,7 @@
 #  under the License.
 
 platform.lib.ext=
+platform.dll.ext=
 platform.exe.ext=
 platform.object.ext=
 platform.script.ext=

Modified: incubator/tuscany/cpp/sca/antscripts/system.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/antscripts/system.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/antscripts/system.xml (original)
+++ incubator/tuscany/cpp/sca/antscripts/system.xml Fri Jul 27 00:32:58 2007
@@ -116,6 +116,7 @@
      Take the override value from platform.properties if set
      Else take it from the env var AXIS2C_HOME
   -->
+  <target name="check.ws">
   <if>
     <isset property="platform.axis2c.home.dir"/>
     <then>
@@ -130,9 +131,10 @@
       </then>
     </elseif>
     <else>
-      <property name="enable_ws" value="false"/>
+      <echo message="TuscanySCA ws extension is not enabled" level="warning"/>
     </else>
   </if>
+  </target>
 
   <!--
      Configure ${enable_python} and related python properties, which are needed
@@ -140,6 +142,7 @@
      Take the override value from platform.properties if set
      Else check env vars PYTHON_LIB, PYTHON_INCLUDE, and PYTHON_VERSION
   -->
+  <target name="check.python">
   <if>
     <and>
       <isset property="platform.python.version"/>
@@ -166,9 +169,10 @@
       </then>
     </elseif>
     <else>
-      <property name="enable_python" value="false"/>
+      <echo message="TuscanySCA python extension is not enabled" level="warning"/>
     </else>
   </if>
+  </target>
 
   <!--
      Configure ${enable_ruby} and related ruby properties, which are needed
@@ -176,6 +180,7 @@
      Take the override value from platform.properties if set
      Else check env vars RUBY_LIB and RUBY_INCLUDE
   -->
+  <target name="check.ruby">
   <if>
     <and>
       <isset property="platform.ruby.include.dir"/>
@@ -198,9 +203,10 @@
       </then>
     </elseif>
     <else>
-      <property name="enable_ruby" value="false"/>
+      <echo message="TuscanySCA ruby extension is not enabled" level="warning"/>
     </else>
   </if>
+  </target>
 
   <!--
      Configure ${enable_rest} and related ruby properties, which are needed
@@ -208,6 +214,7 @@
      Take the override value from platform.properties if set
      Else check env vars CURL_LIB, CURL_INCLUDE, HTTPD_INCLUDE, and APR_INCLUDE
   -->
+  <target name="check.rest">
   <if>
     <and>
       <isset property="platform.rest.include.dir"/>
@@ -236,9 +243,10 @@
       </then>
     </elseif>
     <else>
-      <property name="enable_rest" value="false"/>
+      <echo message="TuscanySCA rest extension is not enabled" level="warning"/>
     </else>
   </if>
+  </target>
 
   <!--
      Configure ${enable_php} and related php properties, which are needed
@@ -246,6 +254,7 @@
      Take the override value from platform.properties if set
      Else check env vars CURL_LIB, CURL_INCLUDE, HTTPD_INCLUDE, and APR_INCLUDE
   -->
+  <target name="check.php">
   <if>
     <and>
       <isset property="platform.php.include.dir"/>
@@ -276,9 +285,10 @@
       </then>
     </elseif>
     <else>
-      <property name="enable_php" value="false"/>
+      <echo message="TuscanySCA php extension is not enabled" level="warning"/>
     </else>
   </if>
+  </target>
 
   <!--
      Configure the compiler.name
@@ -315,7 +325,7 @@
       <property name="lib.ext" value="${platform.lib.ext}"/>
     </then>
     <else>
-      <condition property="lib.ext" value=".dll">
+      <condition property="lib.ext" value=".lib">
         <os family="windows"/>
       </condition>
 
@@ -326,6 +336,26 @@
       <condition property="lib.ext" value=".so">
         <os family="unix"/>
       </condition>
+    </else>
+  </if>
+
+  <!--
+     Configure the dll.ext, used for windows only
+     Take the override value from platform.properties if set
+     Else set it based on the OS
+  -->
+  <if>
+    <isset property="platform.dll.ext"/>
+    <then>
+      <property name="dll.ext" value="${platform.dll.ext}"/>
+    </then>
+    <else>
+      <condition property="dll.ext" value=".dll">
+        <os family="windows"/>
+      </condition>
+
+      <property name="dll.ext" value=""/>
+
     </else>
   </if>
 

Modified: incubator/tuscany/cpp/sca/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/build.xml (original)
+++ incubator/tuscany/cpp/sca/build.xml Fri Jul 27 00:32:58 2007
@@ -35,8 +35,10 @@
   -->
 
   <target name="all" description="build and install all TuscanyScaNative source code">
-    <antcall target="build"/>
-    <antcall target="install"/>
+    <antcall target="build.core"/>
+    <antcall target="install.core"/>
+    <antcall target="build.extensions"/>
+    <antcall target="install.extensions"/>
   </target>
 
   <target name="build" description="Build all TuscanyScaNative source code">

Modified: incubator/tuscany/cpp/sca/runtime/core/src/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/core/src/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/core/src/build.xml (original)
+++ incubator/tuscany/cpp/sca/runtime/core/src/build.xml Fri Jul 27 00:32:58 2007
@@ -188,11 +188,10 @@
         srcdir="${this.dir}/tuscany/sca"
         files="export.h"
         destdir="${tuscanySCA.install.dir}/include/tuscany/sca"/>
-    <cpp-install-file
-        srcfile="${lib.prefix}${tuscany.core.lib}${lib.ext}"
-        destfile="${lib.prefix}${tuscany.core.lib}${lib.ext}${tuscanySCA.library.version}"
+    <cpp-install-lib
+        lib="${tuscany.core.lib}"
         srcdir="${lib.dir}"
-        destdir="${tuscanySCA.install.dir}/lib"/>
+        destrootdir="${tuscanySCA.install.dir}"/>
     <cpp-symlink
         linkdir="${tuscanySCA.install.dir}/lib"
         link="${lib.prefix}${tuscany.core.lib}${lib.ext}"

Modified: incubator/tuscany/cpp/sca/runtime/extensions/cpp/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/cpp/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/cpp/build.xml (original)
+++ incubator/tuscany/cpp/sca/runtime/extensions/cpp/build.xml Fri Jul 27 00:32:58 2007
@@ -132,11 +132,10 @@
     <antcall target="install.cpp.core"/>
     <antcall target="install.cpp.model"/>
     <antcall target="install.xsd"/>
-    <cpp-install-file
-        srcfile="${lib.prefix}${tuscany.cpp.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${tuscany.cpp.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+    <cpp-install-lib
+        lib="${tuscany.cpp.extension.lib}"
         srcdir="${lib.dir}"
-        destdir="${cpp.extension.install.dir}/lib"/>
+        destrootdir="${cpp.extension.install.dir}"/>
     <cpp-symlink
         linkdir="${cpp.extension.install.dir}/lib"
         link="${lib.prefix}${tuscany.cpp.extension.lib}${lib.ext}"

Modified: incubator/tuscany/cpp/sca/runtime/extensions/php/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/php/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/php/build.xml (original)
+++ incubator/tuscany/cpp/sca/runtime/extensions/php/build.xml Fri Jul 27 00:32:58 2007
@@ -80,7 +80,8 @@
     <antcall target="compile.php.model"/>
   </target>
 
-  <target name="link" description="Link all TuscanyScaNative php extension source code">
+  <target name="link" depends="check.php" if="enable_php"
+          description="Link all TuscanyScaNative php extension source code">
     <cpp-link
         outfile="${php.extension.lib}"
         outdir="${lib.dir}"
@@ -110,66 +111,45 @@
 
     <!-- compile -->
 
-  <target name="compile.php.core">
-    <if>
-      <equals arg1="${enable_php}" arg2="true"/>
-      <then>
+  <target name="compile.php.core" depends="check.php" if="enable_php">
     <cpp-compile
         srcdir="${php.core.dir}"
         objdir="${lib.dir}"
         infiles="${php.core.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/src"/>
-            <includepath path="${php.include.dir}"/>
-            <includepath path="${php.include.dir}/main"/>
-            <includepath path="${php.include.dir}/sapi/embed"/>
-            <includepath path="${php.include.dir}/TSRM"/>
-            <includepath path="${php.include.dir}/Zend"/>
-            <includepath path="${php.sca.sdo.include.dir}"/>
-            <defineset if="windows" define="TUSCANY_SCA_PHP_EXPORTS"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA php extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.php.model">
-    <if>
-      <equals arg1="${enable_php}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${php.model.dir}"
-            objdir="${lib.dir}"
-            infiles="${php.model.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/src"/>
-            <includepath path="${php.include.dir}"/>
-            <includepath path="${php.include.dir}/TSRM"/>
-            <defineset if="windows" define="TUSCANY_SCA_PHP_EXPORTS"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA php extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
+      <custom-cc-elements>
+        <includepath path="${this.dir}/src"/>
+        <includepath path="${php.include.dir}"/>
+        <includepath path="${php.include.dir}/main"/>
+        <includepath path="${php.include.dir}/sapi/embed"/>
+        <includepath path="${php.include.dir}/TSRM"/>
+        <includepath path="${php.include.dir}/Zend"/>
+        <includepath path="${php.sca.sdo.include.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_PHP_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.php.model" depends="check.php" if="enable_php">
+    <cpp-compile
+        srcdir="${php.model.dir}"
+        objdir="${lib.dir}"
+        infiles="${php.model.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/src"/>
+        <includepath path="${php.include.dir}"/>
+        <includepath path="${php.include.dir}/TSRM"/>
+        <defineset if="windows" define="TUSCANY_SCA_PHP_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
   </target>
 
     <!-- install -->
 
-  <target name="install.php.core">
-    <cpp-install-file
-        srcfile="${lib.prefix}${php.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${php.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+  <target name="install.php.core" depends="check.php" if="enable_php">
+    <cpp-install-lib
+        lib="${php.extension.lib}"
         srcdir="${lib.dir}"
-        destdir="${php.extension.install.dir}/lib"/>
+        destrootdir="${php.extension.install.dir}"/>
     <cpp-symlink
         linkdir="${php.extension.install.dir}/lib"
         link="${lib.prefix}${php.extension.lib}${lib.ext}"
@@ -181,7 +161,7 @@
         resource="${lib.prefix}${php.extension.lib}${lib.ext}"/>
   </target>
 
-  <target name="install.php.xsd">
+  <target name="install.php.xsd" depends="check.php" if="enable_php">
     <cpp-install-files
         files="${xsd.files}"
         srcdir="${xsd.dir}"

Modified: incubator/tuscany/cpp/sca/runtime/extensions/python/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/python/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/python/build.xml (original)
+++ incubator/tuscany/cpp/sca/runtime/extensions/python/build.xml Fri Jul 27 00:32:58 2007
@@ -82,12 +82,17 @@
     <antcall target="compile.python.model"/>
   </target>
 
-  <target name="link" description="Link all TuscanyScaNative python extension source code">
+  <target name="link" depends="check.python" if="enable_python"
+          description="Link all TuscanyScaNative python extension source code">
     <cpp-link
         outfile="${python.extension.lib}"
         outdir="${lib.dir}"
         indir="${lib.dir}"
-        infiles="*${object.ext}"/>
+        infiles="*${object.ext}">
+      <custom-ld-elements>
+        <libset dir="${python.lib.dir}" libs="${python.version}"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
   <target name="install" description="Install TuscanyScaNative python extension libraries and headers">
@@ -107,58 +112,39 @@
 
     <!-- compile -->
 
-  <target name="compile.python.core">
-    <if>
-      <equals arg1="${enable_python}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${python.core.dir}"
-            objdir="${lib.dir}"
-            infiles="${python.core.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.src.dir}"/>
-            <includepath path="${python.include.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA python extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.python.model">
-    <if>
-      <equals arg1="${enable_python}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${python.model.dir}"
-            objdir="${lib.dir}"
-            infiles="${python.model.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.src.dir}"/>
-            <includepath path="${python.include.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA python extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
+  <target name="compile.python.core" depends="check.python" if="enable_python">
+    <cpp-compile
+        srcdir="${python.core.dir}"
+        objdir="${lib.dir}"
+        infiles="${python.core.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.src.dir}"/>
+        <includepath path="${python.include.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_PYTHON_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.python.model" depends="check.python" if="enable_python">
+    <cpp-compile
+        srcdir="${python.model.dir}"
+        objdir="${lib.dir}"
+        infiles="${python.model.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.src.dir}"/>
+        <includepath path="${python.include.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_PYTHON_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
   </target>
 
     <!-- install -->
 
-  <target name="install.python.core">
-    <cpp-install-file
-        srcfile="${lib.prefix}${python.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${python.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+  <target name="install.python.core" depends="check.python" if="enable_python">
+    <cpp-install-lib
+        lib="${python.extension.lib}"
         srcdir="${lib.dir}"
-        destdir="${python.extension.install.dir}/lib"/>
+        destrootdir="${python.extension.install.dir}"/>
     <cpp-symlink
         linkdir="${python.extension.install.dir}/lib"
         link="${lib.prefix}${python.extension.lib}${lib.ext}"
@@ -170,7 +156,7 @@
         resource="${lib.prefix}${python.extension.lib}${lib.ext}"/>
   </target>
 
-  <target name="install.python.xsd">
+  <target name="install.python.xsd" depends="check.python" if="enable_python">
     <cpp-install-files
         files="${python.xsd.files}"
         srcdir="${python.xsd.dir}"

Modified: incubator/tuscany/cpp/sca/runtime/extensions/rest/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/rest/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/rest/build.xml (original)
+++ incubator/tuscany/cpp/sca/runtime/extensions/rest/build.xml Fri Jul 27 00:32:58 2007
@@ -145,136 +145,78 @@
 
     <!-- compile -->
 
-  <target name="compile.rest.interface.core">
-    <if>
-      <equals arg1="${enable_rest}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${interface.core.dir}"
-            objdir="${interface.lib.dir}"
-            infiles="${interface.core.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${interface.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA rest extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.rest.interface.model">
-    <if>
-      <equals arg1="${enable_rest}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${interface.model.dir}"
-            objdir="${interface.lib.dir}"
-            infiles="${interface.model.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${interface.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA rest extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.rest.reference.core">
-    <if>
-      <equals arg1="${enable_rest}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${reference.core.dir}"
-            objdir="${reference.lib.dir}"
-            infiles="${reference.core.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${interface.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA rest extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.rest.reference.model">
-    <if>
-      <equals arg1="${enable_rest}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${reference.model.dir}"
-            objdir="${reference.lib.dir}"
-            infiles="${reference.model.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${reference.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA rest extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.rest.service.core">
-    <if>
-      <equals arg1="${enable_rest}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${service.core.dir}"
-            objdir="${service.lib.dir}"
-            infiles="${service.core.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${rest.httpd.include.dir}"/>
-            <includepath path="${this.dir}/${interface.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA rest extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.rest.service.model">
-    <if>
-      <equals arg1="${enable_rest}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${service.model.dir}"
-            objdir="${service.lib.dir}"
-            infiles="${service.model.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${service.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA rest extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
+  <target name="compile.rest.interface.core" depends="check.rest" if="enable_rest">
+    <cpp-compile
+        srcdir="${interface.core.dir}"
+        objdir="${interface.lib.dir}"
+        infiles="${interface.core.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${interface.dir}"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.rest.interface.model" depends="check.rest" if="enable_rest">
+    <cpp-compile
+        srcdir="${interface.model.dir}"
+        objdir="${interface.lib.dir}"
+        infiles="${interface.model.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${interface.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_REST_INTERFACE_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.rest.reference.core" depends="check.rest" if="enable_rest">
+    <cpp-compile
+        srcdir="${reference.core.dir}"
+        objdir="${reference.lib.dir}"
+        infiles="${reference.core.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${interface.dir}"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.rest.reference.model" depends="check.rest" if="enable_rest">
+    <cpp-compile
+        srcdir="${reference.model.dir}"
+        objdir="${reference.lib.dir}"
+        infiles="${reference.model.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${reference.dir}"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.rest.service.core" depends="check.rest" if="enable_rest">
+    <cpp-compile
+        srcdir="${service.core.dir}"
+        objdir="${service.lib.dir}"
+        infiles="${service.core.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${rest.httpd.include.dir}"/>
+        <includepath path="${this.dir}/${interface.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_REST_SERVICE_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.rest.service.model" depends="check.rest" if="enable_rest">
+    <cpp-compile
+        srcdir="${service.model.dir}"
+        objdir="${service.lib.dir}"
+        infiles="${service.model.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${service.dir}"/>
+      </custom-cc-elements>
+    </cpp-compile>
   </target>
 
     <!-- link -->
 
-  <target name="link.rest.interface">
+  <target name="link.rest.interface" depends="check.rest" if="enable_rest">
     <cpp-link
         outfile="${interface.extension.lib}"
         outdir="${interface.lib.dir}"
@@ -282,35 +224,48 @@
         infiles="*${object.ext}"/>
   </target>
 
-  <target name="link.rest.reference">
+  <target name="link.rest.reference" depends="check.rest" if="enable_rest">
     <cpp-link
         outfile="${reference.extension.lib}"
         outdir="${reference.lib.dir}"
         indir="${reference.lib.dir}"
-        infiles="*${object.ext}"/>
+        infiles="*${object.ext}">
+      <custom-ld-elements>
+        <libset dir="${interface.lib.dir}" libs="${interface.extension.lib}"/>
+        <libset dir="${rest.curl.lib.dir}" libs="curl"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
-  <target name="link.rest.service">
+  <target name="link.rest.service" depends="check.rest" if="enable_rest">
     <cpp-link
         outfile="${service.extension.lib}"
         outdir="${service.lib.dir}"
         indir="${service.lib.dir}"
-        infiles="${service.core.object.files}"/>
+        infiles="${service.core.object.files}">
+      <custom-ld-elements>
+        <libset dir="${interface.lib.dir}" libs="${interface.extension.lib}"/>
+      </custom-ld-elements>
+    </cpp-link>
     <cpp-link
         outfile="${service.mod.lib}"
         outdir="${service.lib.dir}"
         indir="${service.lib.dir}"
-        infiles="${service.mod.object.files}"/>
+        infiles="${service.mod.object.files}">
+      <custom-ld-elements>
+        <libset dir="${service.lib.dir}" libs="${service.extension.lib}"/>
+        <libset dir="${interface.lib.dir}" libs="${interface.extension.lib}"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
     <!-- install -->
 
-  <target name="install.rest.interface">
-    <cpp-install-file
-        srcfile="${lib.prefix}${interface.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${interface.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+  <target name="install.rest.interface" depends="check.rest" if="enable_rest">
+    <cpp-install-lib
+        lib="${interface.extension.lib}"
         srcdir="${interface.lib.dir}"
-        destdir="${rest.extension.install.dir}/interface/lib"/>
+        destrootdir="${rest.extension.install.dir}/interface"/>
     <cpp-symlink
         linkdir="${rest.extension.install.dir}/interface/lib"
         link="${lib.prefix}${interface.extension.lib}${lib.ext}"
@@ -322,12 +277,11 @@
         resource="${lib.prefix}${interface.extension.lib}${lib.ext}"/>
   </target>
 
-  <target name="install.rest.reference">
-    <cpp-install-file
-        srcfile="${lib.prefix}${reference.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${reference.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+  <target name="install.rest.reference" depends="check.rest" if="enable_rest">
+    <cpp-install-lib
+        lib="${reference.extension.lib}"
         srcdir="${reference.lib.dir}"
-        destdir="${rest.extension.install.dir}/reference/lib"/>
+        destrootdir="${rest.extension.install.dir}/reference"/>
     <cpp-symlink
         linkdir="${rest.extension.install.dir}/reference/lib"
         link="${lib.prefix}${reference.extension.lib}${lib.ext}"
@@ -339,13 +293,12 @@
         resource="${lib.prefix}${reference.extension.lib}${lib.ext}"/>
   </target>
 
-  <target name="install.rest.service">
+  <target name="install.rest.service" depends="check.rest" if="enable_rest">
       <!-- install and link tuscany_sca_rest_service library -->
-    <cpp-install-file
-        srcfile="${lib.prefix}${service.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${service.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+    <cpp-install-lib
+        lib="${service.extension.lib}"
         srcdir="${service.lib.dir}"
-        destdir="${rest.extension.install.dir}/service/lib"/>
+        destrootdir="${rest.extension.install.dir}/service"/>
     <cpp-symlink
         linkdir="${rest.extension.install.dir}/service/lib"
         link="${lib.prefix}${service.extension.lib}${lib.ext}"
@@ -357,18 +310,17 @@
         resource="${lib.prefix}${service.extension.lib}${lib.ext}"/>
 
       <!-- install and link tuscany_sca_mod_rest library -->
-    <cpp-install-file
-        srcfile="${lib.prefix}${service.mod.lib}${lib.ext}"
-        destfile="${lib.prefix}${service.mod.lib}${lib.ext}${tuscanySCA.library.version}"
+    <cpp-install-lib
+        lib="${service.mod.lib}"
         srcdir="${service.lib.dir}"
-        destdir="${rest.extension.install.dir}/service/lib"/>
+        destrootdir="${rest.extension.install.dir}/service"/>
     <cpp-symlink
         linkdir="${rest.extension.install.dir}/service/lib"
         link="${lib.prefix}${service.mod.lib}${lib.ext}"
         resource="${lib.prefix}${service.mod.lib}${lib.ext}${tuscanySCA.library.version}"/>
   </target>
 
-  <target name="install.rest.xsd">
+  <target name="install.rest.xsd" depends="check.rest" if="enable_rest">
     <cpp-install-files
         files="${xsd.files}"
         srcdir="${xsd.dir}"

Modified: incubator/tuscany/cpp/sca/runtime/extensions/ruby/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/ruby/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/ruby/build.xml (original)
+++ incubator/tuscany/cpp/sca/runtime/extensions/ruby/build.xml Fri Jul 27 00:32:58 2007
@@ -110,83 +110,59 @@
 
     <!-- compile -->
 
-  <target name="compile.ruby.core">
-    <if>
-      <equals arg1="${enable_ruby}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${ruby.core.dir}"
-            objdir="${lib.dir}"
-            infiles="${ruby.core.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.src.dir}"/>
-            <includepath path="${ruby.include.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA ruby extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.ruby.model">
-    <if>
-      <equals arg1="${enable_ruby}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${ruby.model.dir}"
-            objdir="${lib.dir}"
-            infiles="${ruby.model.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.src.dir}"/>
-            <includepath path="${ruby.include.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA ruby extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.ruby.extension">
-    <if>
-      <equals arg1="${enable_ruby}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${ruby.extension.dir}"
-            objdir="${lib.extension.dir}"
-            infiles="${ruby.extension.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.src.dir}"/>
-            <includepath path="${ruby.include.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA ruby extension is not enabled"
-            level="warning"/>
-      </else>
-    </if>
+  <target name="compile.ruby.core" depends="check.ruby" if="enable_ruby">
+    <cpp-compile
+        srcdir="${ruby.core.dir}"
+        objdir="${lib.dir}"
+        infiles="${ruby.core.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.src.dir}"/>
+        <includepath path="${ruby.include.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_RUBY_LANG_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.ruby.model" depends="check.ruby" if="enable_ruby">
+    <cpp-compile
+        srcdir="${ruby.model.dir}"
+        objdir="${lib.dir}"
+        infiles="${ruby.model.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.src.dir}"/>
+        <includepath path="${ruby.include.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_RUBY_LANG_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.ruby.extension" depends="check.ruby" if="enable_ruby">
+    <cpp-compile
+        srcdir="${ruby.extension.dir}"
+        objdir="${lib.extension.dir}"
+        infiles="${ruby.extension.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.src.dir}"/>
+        <includepath path="${ruby.include.dir}"/>
+      </custom-cc-elements>
+    </cpp-compile>
   </target>
 
     <!-- link -->
 
-  <target name="link.ruby.core">
+  <target name="link.ruby.core" depends="check.ruby" if="enable_ruby">
     <cpp-link
         outfile="${ruby.core.lib}"
         outdir="${lib.dir}"
         indir="${lib.dir}"
-        infiles="*${object.ext}"/>
+        infiles="*${object.ext}">
+      <custom-ld-elements>
+        <libset dir="${ruby.lib.dir}" libs="ruby"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
-  <target name="link.ruby.extension">
+  <target name="link.ruby.extension" depends="check.ruby" if="enable_ruby">
     <cpp-link
         outfile="${ruby.extension.lib}"
         outdir="${lib.extension.dir}"
@@ -196,12 +172,11 @@
 
     <!-- install -->
 
-  <target name="install.ruby.core">
-    <cpp-install-file
-        srcfile="${lib.prefix}${ruby.core.lib}${lib.ext}"
-        destfile="${lib.prefix}${ruby.core.lib}${lib.ext}${tuscanySCA.library.version}"
+  <target name="install.ruby.core" depends="check.ruby" if="enable_ruby">
+    <cpp-install-lib
+        lib="${ruby.core.lib}"
         srcdir="${lib.dir}"
-        destdir="${ruby.install.dir}/lib"/>
+        destrootdir="${ruby.install.dir}"/>
     <cpp-symlink
         linkdir="${ruby.install.dir}/lib"
         link="${lib.prefix}${ruby.core.lib}${lib.ext}"
@@ -213,7 +188,7 @@
         resource="${lib.prefix}${ruby.core.lib}${lib.ext}"/>
   </target>
 
-  <target name="install.ruby.extension">
+  <target name="install.ruby.extension" depends="check.ruby" if="enable_ruby">
     <cpp-install-file
         srcfile="${lib.prefix}${ruby.extension.lib}${lib.ext}"
         destfile="${ruby.extension.lib}${lib.ext}"
@@ -221,7 +196,7 @@
         destdir="${ruby.install.dir}/lib"/>
   </target>
 
-  <target name="install.ruby.xsd">
+  <target name="install.ruby.xsd" depends="check.ruby" if="enable_ruby">
     <cpp-install-files
         files="${ruby.xsd.files}"
         srcdir="${ruby.xsd.dir}"

Modified: incubator/tuscany/cpp/sca/runtime/extensions/sca/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/sca/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/sca/build.xml (original)
+++ incubator/tuscany/cpp/sca/runtime/extensions/sca/build.xml Fri Jul 27 00:32:58 2007
@@ -112,14 +112,14 @@
 
     <!-- compile -->
 
-  <target name="compile.sca.reference.core">
+  <target name="compile.sca.reference.core" depends="check.ws" if="enable_ws">
     <cpp-compile
         srcdir="${reference.core.dir}"
         objdir="${reference.lib.dir}"
         infiles="${reference.core.cpp.files}"/>
   </target>
 
-  <target name="compile.sca.reference.model">
+  <target name="compile.sca.reference.model" depends="check.ws" if="enable_ws">
     <cpp-compile
         srcdir="${reference.model.dir}"
         objdir="${reference.lib.dir}"
@@ -130,14 +130,14 @@
     </cpp-compile>
   </target>
 
-  <target name="compile.sca.service.core">
+  <target name="compile.sca.service.core" depends="check.ws" if="enable_ws">
     <cpp-compile
         srcdir="${service.core.dir}"
         objdir="${service.lib.dir}"
         infiles="${service.core.cpp.files}"/>
   </target>
 
-  <target name="compile.sca.service.model">
+  <target name="compile.sca.service.model" depends="check.ws" if="enable_ws">
     <cpp-compile
         srcdir="${service.model.dir}"
         objdir="${service.lib.dir}"
@@ -150,30 +150,37 @@
 
     <!-- link -->
 
-  <target name="link.sca.reference">
+  <target name="link.sca.reference" depends="check.ws" if="enable_ws">
     <cpp-link
         outfile="${reference.extension.lib}"
         outdir="${reference.lib.dir}"
         indir="${reference.lib.dir}"
-        infiles="*${object.ext}"/>
+        infiles="*${object.ext}">
+      <custom-ld-elements>
+        <libset dir="${sdo.lib.dir}" libs="tuscany_sdo_axiom"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
-  <target name="link.sca.service">
+  <target name="link.sca.service" depends="check.ws" if="enable_ws">
     <cpp-link
         outfile="${service.extension.lib}"
         outdir="${service.lib.dir}"
         indir="${service.lib.dir}"
-        infiles="*${object.ext}"/>
+        infiles="*${object.ext}">
+      <custom-ld-elements>
+        <libset dir="${sdo.lib.dir}" libs="tuscany_sdo_axiom"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
     <!-- install -->
 
-  <target name="install.sca.reference">
-    <cpp-install-file
-        srcfile="${lib.prefix}${reference.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${reference.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+  <target name="install.sca.reference" depends="check.ws" if="enable_ws">
+    <cpp-install-lib
+        lib="${reference.extension.lib}"
         srcdir="${reference.lib.dir}"
-        destdir="${sca.extension.install.dir}/reference/lib"/>
+        destrootdir="${sca.extension.install.dir}/reference"/>
     <cpp-symlink
         linkdir="${sca.extension.install.dir}/reference/lib"
         link="${lib.prefix}${reference.extension.lib}${lib.ext}"
@@ -185,12 +192,11 @@
         resource="${lib.prefix}${reference.extension.lib}${lib.ext}"/>
   </target>
 
-  <target name="install.sca.service">
-    <cpp-install-file
-        srcfile="${lib.prefix}${service.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${service.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+  <target name="install.sca.service" depends="check.ws" if="enable_ws">
+    <cpp-install-lib
+        lib="${service.extension.lib}"
         srcdir="${service.lib.dir}"
-        destdir="${sca.extension.install.dir}/service/lib"/>
+        destrootdir="${sca.extension.install.dir}/service"/>
     <cpp-symlink
         linkdir="${sca.extension.install.dir}/service/lib"
         link="${lib.prefix}${service.extension.lib}${lib.ext}"
@@ -202,7 +208,7 @@
         resource="${lib.prefix}${service.extension.lib}${lib.ext}"/>
   </target>
 
-  <target name="install.sca.xsd">
+  <target name="install.sca.xsd" depends="check.ws" if="enable_ws">
     <cpp-install-files
         files="${xsd.files}"
         srcdir="${xsd.dir}"

Modified: incubator/tuscany/cpp/sca/runtime/extensions/ws/build.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sca/runtime/extensions/ws/build.xml?view=diff&rev=560132&r1=560131&r2=560132
==============================================================================
--- incubator/tuscany/cpp/sca/runtime/extensions/ws/build.xml (original)
+++ incubator/tuscany/cpp/sca/runtime/extensions/ws/build.xml Fri Jul 27 00:32:58 2007
@@ -51,7 +51,9 @@
 
   <property
     name="reference.core.cpp.files"
-    value="Axis2Client.cpp WSServiceBindingExtension.cpp WSServiceWrapper.cpp"/>
+    value="Axis2Client.cpp
+           WSServiceBindingExtension.cpp
+           WSServiceWrapper.cpp"/>
 
   <property
     name="reference.model.cpp.files"
@@ -67,10 +69,15 @@
            WSServiceProxy.cpp"/>
 
   <property
+    name="service.model.cpp.files"
+    value="WSReferenceBinding.cpp"/>
+
+  <property
     name="service.core.obj.files"
     value="Axis2Service${object.ext}
            Axis2Utils${object.ext}
            WSReferenceBindingExtension${object.ext}
+           WSReferenceBinding${object.ext}
            WSServiceProxy${object.ext}"/>
 
   <property
@@ -79,10 +86,6 @@
            Axis2DispatcherModule${object.ext}"/>
 
   <property
-    name="service.model.cpp.files"
-    value="WSReferenceBinding.cpp"/>
-
-  <property
     name="xsd.files"
     value="sca-binding-webservice.xsd"/>
 
@@ -132,126 +135,128 @@
 
     <!-- compile -->
 
-  <target name="compile.ws.reference.core">
-    <if>
-      <equals arg1="${enable_ws}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${reference.core.dir}"
-            objdir="${reference.lib.dir}"
-            infiles="${reference.core.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${reference.dir}"/>
-            <includepath path="${axis2c.home.dir}/include"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA ws is not enabled since Axis2c has not been specified"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.ws.reference.model">
-    <if>
-      <equals arg1="${enable_ws}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${reference.model.dir}"
-            objdir="${reference.lib.dir}"
-            infiles="${reference.model.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${reference.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA ws is not enabled since Axis2c has not been specified"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.ws.service.core">
-    <if>
-      <equals arg1="${enable_ws}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${service.core.dir}"
-            objdir="${service.lib.dir}"
-            infiles="${service.core.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${service.dir}"/>
-            <includepath path="${axis2c.home.dir}/include"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA ws is not enabled since Axis2c has not been specified"
-            level="warning"/>
-      </else>
-    </if>
-  </target>
-
-  <target name="compile.ws.service.model">
-    <if>
-      <equals arg1="${enable_ws}" arg2="true"/>
-      <then>
-        <cpp-compile
-            srcdir="${service.model.dir}"
-            objdir="${service.lib.dir}"
-            infiles="${service.model.cpp.files}">
-          <custom-cc-elements>
-            <includepath path="${this.dir}/${service.dir}"/>
-          </custom-cc-elements>
-        </cpp-compile>
-      </then>
-      <else>
-        <echo
-            message="TuscanySCA ws is not enabled since Axis2c has not been specified"
-            level="warning"/>
-      </else>
-    </if>
+  <target name="compile.ws.reference.core" depends="check.ws" if="enable_ws">
+    <cpp-compile
+        srcdir="${reference.core.dir}"
+        objdir="${reference.lib.dir}"
+        infiles="${reference.core.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${reference.dir}"/>
+        <includepath path="${axis2c.home.dir}/include"/>
+        <defineset if="windows" define="TUSCANY_SCA_WS_REFERENCE_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.ws.reference.model" depends="check.ws" if="enable_ws">
+    <cpp-compile
+        srcdir="${reference.model.dir}"
+        objdir="${reference.lib.dir}"
+        infiles="${reference.model.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${reference.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_WS_REFERENCE_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.ws.service.core" depends="check.ws" if="enable_ws">
+    <cpp-compile
+        srcdir="${service.core.dir}"
+        objdir="${service.lib.dir}"
+        infiles="${service.core.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${service.dir}"/>
+        <includepath path="${axis2c.home.dir}/include"/>
+        <defineset if="windows" define="TUSCANY_SCA_WS_SERVICE_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
+  </target>
+
+  <target name="compile.ws.service.model" depends="check.ws" if="enable_ws">
+    <cpp-compile
+        srcdir="${service.model.dir}"
+        objdir="${service.lib.dir}"
+        infiles="${service.model.cpp.files}">
+      <custom-cc-elements>
+        <includepath path="${this.dir}/${service.dir}"/>
+        <defineset if="windows" define="TUSCANY_SCA_WS_SERVICE_EXPORTS"/>
+      </custom-cc-elements>
+    </cpp-compile>
   </target>
 
     <!-- link -->
 
-  <target name="link.ws.reference">
+  <target name="link.ws.reference" depends="check.ws" if="enable_ws">
     <cpp-link
         outfile="${reference.extension.lib}"
         outdir="${reference.lib.dir}"
         indir="${reference.lib.dir}"
-        infiles="*${object.ext}"/>
+        infiles="*${object.ext}">
+      <custom-ld-elements>
+        <libset dir="${sdo.lib.dir}" libs="tuscany_sdo_axiom"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_axiom"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_engine"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_minizip"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_parser"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_http_receiver"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_http_sender"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_util"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_wsdl"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="woden"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
-  <target name="link.ws.service">
+  <target name="link.ws.service" depends="check.ws" if="enable_ws">
     <cpp-link
         outfile="${service.extension.lib}"
         outdir="${service.lib.dir}"
         indir="${service.lib.dir}"
-        infiles="${service.core.obj.files}"/>
+        infiles="${service.core.obj.files}">
+      <custom-ld-elements>
+        <libset dir="${sdo.lib.dir}" libs="tuscany_sdo_axiom"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_axiom"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_engine"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_minizip"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_parser"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_http_receiver"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_http_sender"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_util"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_wsdl"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="woden"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
-  <target name="link.ws.service.dispatcher">
+  <target name="link.ws.service.dispatcher" depends="check.ws" if="enable_ws">
     <cpp-link
         outfile="${dispatcher.extension.lib}"
         outdir="${service.lib.dir}"
         indir="${service.lib.dir}"
-        infiles="${service.core.dispatcher.obj.files}"/>
+        infiles="${service.core.dispatcher.obj.files}">
+      <custom-ld-elements>
+        <libset dir="${sdo.lib.dir}" libs="tuscany_sdo_axiom"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_axiom"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_engine"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_minizip"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_parser"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_http_receiver"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_http_sender"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_util"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="axis2_wsdl"/>
+        <libset dir="${axis2c.home.dir}/lib" libs="woden"/>
+      </custom-ld-elements>
+    </cpp-link>
   </target>
 
     <!-- install -->
 
-  <target name="install.ws.reference">
-    <cpp-install-file
-        srcfile="${lib.prefix}${reference.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${reference.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+  <target name="install.ws.reference" depends="check.ws" if="enable_ws">
+    <cpp-install-lib
+        lib="${reference.extension.lib}"
         srcdir="${reference.lib.dir}"
-        destdir="${ws.extension.install.dir}/reference/lib"/>
+        destrootdir="${ws.extension.install.dir}/reference"/>
     <cpp-symlink
         linkdir="${ws.extension.install.dir}/reference/lib"
         link="${lib.prefix}${reference.extension.lib}${lib.ext}"
@@ -263,7 +268,7 @@
         resource="${lib.prefix}${reference.extension.lib}${lib.ext}"/>
   </target>
 
-  <target name="install.ws.service">
+  <target name="install.ws.service" depends="check.ws" if="enable_ws">
        <!-- install files in the root service extension directory -->
     <cpp-install-file
         srcfile="axis2.xml"
@@ -276,11 +281,10 @@
         destdir="${ws.extension.install.dir}/service"/>
 
        <!-- install and link service extenstion lib -->
-    <cpp-install-file
-        srcfile="${lib.prefix}${service.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${service.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+    <cpp-install-lib
+        lib="${service.extension.lib}"
         srcdir="${service.lib.dir}"
-        destdir="${ws.extension.install.dir}/service/lib"/>
+        destrootdir="${ws.extension.install.dir}/service"/>
     <cpp-symlink
         linkdir="${ws.extension.install.dir}/service/lib"
         link="${lib.prefix}${service.extension.lib}${lib.ext}"
@@ -292,11 +296,10 @@
         resource="${lib.prefix}${service.extension.lib}${lib.ext}"/>
 
        <!-- install and link service dispatcher extenstion lib -->
-    <cpp-install-file
-        srcfile="${lib.prefix}${dispatcher.extension.lib}${lib.ext}"
-        destfile="${lib.prefix}${dispatcher.extension.lib}${lib.ext}${tuscanySCA.library.version}"
+    <cpp-install-lib
+        lib="${dispatcher.extension.lib}"
         srcdir="${service.lib.dir}"
-        destdir="${ws.extension.install.dir}/service/lib"/>
+        destrootdir="${ws.extension.install.dir}/service"/>
     <cpp-symlink
         linkdir="${ws.extension.install.dir}/service/lib"
         link="${lib.prefix}${dispatcher.extension.lib}${lib.ext}"
@@ -327,7 +330,7 @@
         executable="false"/>
   </target>
 
-  <target name="install.ws.xsd">
+  <target name="install.ws.xsd" depends="check.ws" if="enable_ws">
     <cpp-install-files
         files="${xsd.files}"
         srcdir="${xsd.dir}"



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org