###############################################################################
# Copyright (c) 2000, 2016 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
#     Kaloyan Raev <kaloyan.r@zend.com> - Bug 471433
###############################################################################
source.. = Ant Tools Support/,\
                   Ant Editor/
source.lib/antrunner.jar = Ant Runner Support/
output.lib/antrunner.jar = ant_runner_support_bin/
# Compiled with 1.6 locally, see bug 495617:
#source.lib/remoteAnt.jar = Remote Ant Support/
#output.lib/remoteAnt.jar = remote_support_bin/
src.includes = about.html,\
               about_files/,\
               Remote Ant Support/

bin.includes = icons/,\
               plugin.properties,\
               plugin.xml,\
               about.html,\
               templates/,\
               .,\
               META-INF/,\
               about_files/,\
               lib/antrunner.jar,\
               lib/remoteAnt.jar,\
               css/
jars.compile.order=.,lib/antrunner.jar
# ,lib/remoteAnt.jar
javacWarnings..=-unavoidableGenericProblems
