###############################################################################
# Copyright (c) 2001, 2006 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,\
               plugin.properties,\
               META-INF/,\
               .,\
               about.html,\
               schema/
bin.excludes = bin/**,\
               @dot/**,\
               temp.folder/**
src.includes = component.xml,\
               build.properties,\
               schema/,\
               DevTimeSupport/
source.. = src-catalog,\
           src-contentmodel/,\
           src-validation/,\
           src/,\
           src-emfModelSynch/,\
           src-search/

output.. = bin/
