###############################################################################
# Copyright (c) 2009, 2018 Red Hat, Inc.
#
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
# 
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     Red Hat - initial API and implementation
###############################################################################
bin.includes = feature.xml,\
               feature.properties,\
               p2.inf
src.includes = .classpath,\
               .project,\
               ChangeLog,\
               build.properties,\
               feature.properties,\
               feature.xml