###############################################################################
# Copyright (c) 2001, 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
#     Jens Lukowski/Innoopract - initial renaming/restructuring
#     
###############################################################################
bin.includes = plugin.xml,\
               .options,\
               .,\
               data/,\
               icons/,\
               jspdebug.properties,\
               plugin.properties,\
               META-INF/
bin.excludes = bin/**,\
               @dot/**,\
               temp.folder/**
src.includes = toc.xml,\
               testToc.xml,\
               smoke/,\
               schema/,\
               jspdebug.properties,\
               javadoc.xml,\
               html/,\
               data/,\
               DevTimeSupport/,\
               doc/
source.. = src/,\
           src-extensions/,\
           src-contentproperties/,\
           src-encoding,\
           src-tasktags/
