###############################################################################
# Copyright (c) 2010 SAP AG, Walldorf.
# 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 = feature.xml,\
               feature.properties
src.includes = feature.xml,\
               build.properties,\
               feature.properties
#generate.feature@org.eclipse.platform.discovery.core.source = org.eclipse.platform.discovery.core