###############################################################################
# Copyright (c) 2003, 2004 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
###############################################################################
output.. = bin/
bin.includes = plugin.properties,\
               plugin.xml,\
               about.html,\
               about.ini,\
               about.properties,\
               about.mappings,\
               eclipse32.gif,\
               welcome.xml,\
               .,\
               ant_tasks/pde-ant.jar,\
               cheatsheets/,\
               intro/,\
               META-INF/
source.ant_tasks/pde-ant.jar = src_ant/
jars.compile.order = .,\
                     ant_tasks/pde-ant.jar
src.includes = about.html
source.. = src/
jars.extra.classpath = ../org.apache.ant/lib/ant.jar
