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

source.lib/antrunner.jar = Ant Runner Support/

src.includes=about.html

bin.includes = icons/,\
		.options,\
		plugin.properties,\
		plugin.xml,\
		about.html,\
		*.jar,\
		lib/*.jar
				
jars.compile.order=externaltools.jar,lib/antrunner.jar
jars.extra.classpath=../org.apache.ant/ant.jar
