<project name="Axis C HTTP Transport Channel" default="compileAxisHTTPTransportChannel" basedir="..">

   <!--
    Compile the Axis HTTP Transport Channel Library
    -->
     <target name="compileAxisHTTPTransportChannel">
      <mkdir dir="${dir.objects}"/>
      <mkdir dir="${dir.bin}"/>
      <antcall target="buildVersionResource" inheritall="true">
          <param name="internalName" value="${channelLibraryName}"/>
      </antcall>
<if>
    <equals arg1="${transport.HTTP.ipv6}" arg2="true" casesensitive="false"/>
    <then>
        <property name="IPV6" value="true"/>
    </then>
</if>
      <if>
         <not>
            <isset property="aix"/>
         </not>
         <then>
                <!--
                  Library name may have been change if windows debug build. Changed
                  in buildInitialize.xml
                  -->
            <cc outfile="${dir.bin}/${channelLibraryName}" objdir="${dir.objects}"
             exceptions="true" outtype="shared" multithreaded="true">
               <!-- Compilers -->
               <includepath path="${HTTP.transport.IPV6.dir}/include" if="windows"/>
               <compiler refid="SolarisCC"/>
               <compiler refid="Linuxgcc"/>
               <compiler refid="HP-UXaC++"/>
               <compiler extends="VisualC++">
                  <defineset>
                     <define name="AXISTRANSPORTCHANNELDLL_EXPORTS"/>
                  </defineset>
               </compiler>
               <defineset>
                  <define name="IPV6" if="IPV6"/>
               </defineset>
               <compiler refid="OS400icc"/>
            	
               <!-- Linkers -->
               <linker refid="SolarisLinker"/>
               <linker refid="LinuxLinker"/>
               <linker refid="HP-UXLinker"/>
               <linker extends="VisualC++Linker">
               <syslibset libs="wsock32"/>
               </linker>
               <linker refid="OS400Linker"/>
               <!-- Files to compile -->
               <fileset dir="${dir.src}">
                  <include name="transport/${transport}/${channel}/*.cpp"/>
                  <include name="platforms/os400/PlatformSpecificOS400.cpp" if="os400"/>
                  <include name="platforms/windows/PlatformSpecificWindows.cpp" if="windows"/>
                  <include name="common/AxisTrace.cpp"/>
                  <include name="transport/${transport}/URL.cpp"/>
               </fileset>
            </cc>
         </then>
         <else>
            <cc outfile="${dir.bin}/${libraryPrefix}${channelLibraryName}${librarySuffix}" objdir="${dir.objects}"
             exceptions="true" multithreaded="true">
               <!-- Compilers -->
               <compiler refid="AIXxlc"/>
               <defineset>
                  <define name="IPV6" if="IPV6"/>
               </defineset>

               <!-- Linkers -->
               <linker refid="AIXLinker"/>
               <!-- Files to compile -->
               <fileset dir="${dir.src}">
                  <include name="transport/${transport}/${channel}/*.cpp"/>
                  <include name="common/AxisTrace.cpp"/>
                  <include name="transport/${transport}/URL.cpp"/>
               </fileset>
            </cc>
         </else>
      </if>
   </target>
</project>
