###############################################################################
# Copyright (c) 2000, 2007 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
###############################################################################
bin.includes = plugin.xml,\
               about.html,\
               .options,\
               JavadocHoverStyleSheet.css,\
               JavadocViewStyleSheet.css,\
               icons/,\
               templates/,\
               plugin.properties,\
               .,\
               serialsupport.jar,\
               META-INF/,\
               dictionaries/,\
               about_files/
src.includes = about.html,\
               schema/,\
               dictionaries/,\
               about_files/
source.. = core refactoring/,\
                 ui/,\
                 ui refactoring/,\
                 core extension/
jars.compile.order = serialsupport.jar
source.serialsupport.jar = serial support/
output.serialsupport.jar = bin/
