###############################################################################
# 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
#     
###############################################################################
source.. = src-encoding/,\
           src/,\
           src-tasktags/,\
           src-contentproperties/
bin.includes = plugin.xml,\
               plugin.properties,\
               .options,\
               config/,\
               META-INF/,\
               .,\
               about.html
bin.excludes = bin/**,\
               @dot/**,\
               temp.folder/**
src.includes = DevTimeSupport/,\
               schema/,\
               doc/,\
               component.xml,\
               build.properties
output.. = bin/
