###############################################################################
# Copyright (c) 2008, 2010 SAP AG.
# 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:
#     SAP AG - initial API and implementation
###############################################################################
bin.includes = META-INF/,\
               icons/,\
               intro/,\
               plugin_customization.ini,\
               .,\
               about.html,\
               license.html,\
               plugin.xml,\
               plugin.properties,\
               about.ini,\
               about.mappings,\
               about.properties
src.includes = icons/
jars.compile.order = .
source.. = src/
output.. = bin/
