###############################################################################
# Copyright (c) 2000, 2005 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
source.. = Ant Tools Support/,\
                   Ant Editor/

source.lib/antrunner.jar = Ant Runner Support/,\
                           Common Ant Support/

source.lib/remoteAnt.jar = Remote Ant Support/,\
                           Common Ant Support/

src.includes=about.html

bin.includes = icons/,\
               plugin.properties,\
               plugin.xml,\
               about.html,\
               templates/,\
               .,\
               lib/*.jar,\
               META-INF/
				
jars.compile.order=antui.jar,lib/antrunner.jar,lib/remoteAnt.jar
jars.extra.classpath=../org.apache.ant/lib/ant.jar
output.lib/antrunner.jar = ant_runner_support_bin/,\
                           common_ant_support_bin/
output.lib/remoteAnt.jar = common_ant_support_bin/,\
                           remote_support_bin/
