###############################################################################
# Copyright (c) 2007 Borland Software Corporation
# 
# 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:
#     Borland Software Corporation - initial API and implementation
###############################################################################
output.. = bin/
source.. = src/,\
           src_ant/
bin.includes = plugin.properties,\
               plugin.xml,\
               schema/**,\
               META-INF/,\
               .,\
               lib/antTasks.jar,\
               modeling32.png,\
               about.html,\
               about.ini,\
               about.mappings,\
               about.properties
jars.compile.order = .
src.includes = schema/
