###############################################################################
# Copyright (c) 2000, 2005 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 = META-INF/,\
               about.html,\
               plugin.properties,\
               ant.sh,\
               build.xml,\
               cleanupBuildResults.sh,\
               galileo.properties,\
               galileo_properties.shsource,\
               getBuckminsterBuildUpdate.sh,\
               getModel.sh,\
               getPlatform.sh,\
               getRelengTools.sh,\
               pauseAll.sh,\
               promoteToReleases.sh,\
               promoteToStaging.sh,\
               removeIf.sh,\
               runBuckyBuild.sh
