###############################################################################
# Copyright (c) 2000, 2003 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
source.startup.jar=src/

src.includes=about.html,launchersrc.zip

bin.includes=\
about.html,\
about.ini,\
about.mappings,\
about.properties,\
eclipse_lg.gif,\
eclipse.gif,\
eclipse32.gif,\
plugin_customization.ini,\
plugin_customization.properties,\
plugin.xml,\
plugin.properties,\
splash.bmp,\
css/,\
cheatsheets/,\
welcome.xml

# note: the following files are intentionally not listed in bin.includes
#    cpl-v10.html
#    notice.html
#    startup.jar
# these files need to end up as root files in <install>/eclipse/
