<?xml version="1.0" encoding="UTF-8"?>
<!--
 !
 ! Copyright 2006 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 basedir="." default="setup">

	<property name="lib.dir" value="lib"/>
	<property name="modules.dir" value="."/>
	
	<property environment="env"/>
    	
	<target name="check.dependency" unless="env.AXIS2_HOME">
        <echo message="AXIS2_HOME must be set"/>
    </target>

	<!-- Copy the required jars and mars appropriately -->
	<target name="setup" if="env.AXIS2_HOME" depends="check.dependency">
		
   		<property name="axis2.modules.dir" value="${env.AXIS2_HOME}/repository/modules/"/>
   		<property name="axis2.lib.dir" value="${env.AXIS2_HOME}/lib"/>
		
		<copy todir="${axis2.lib.dir}">
	        <fileset dir="${lib.dir}">
	                <include name="**/*.jar"/>
	        </fileset>
		</copy>
		
		<copy todir="${axis2.modules.dir}">
	        <fileset dir="${modules.dir}">
	                <include name="**/*.mar"/>
	        </fileset>
		</copy>
				
	</target>
	
</project>
