###############################################################################
# Copyright (c) 2000, 2011 IBM Corporation and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

customBuildCallbacks=customBuildCallbacks.xml

bin.includes = about.html,\
               concepts/,\
               contexts_CDT.xml,\
               contexts_CDT_DEBUGGER.xml,\
               contexts_CDT_DEBUGGER_MI.xml,\
               contexts_CDT_LAUNCH.xml,\
               contexts_CDT_make.xml,\
               getting_started/,\
               help.css,\
               images/,\
               plugin.properties,\
               plugin.xml,\
               reference/,\
               tasks/,\
               toc.xml,\
               topics_Concepts.xml,\
               topics_Getting_Started.xml,\
               topics_Reference.xml,\
               topics_Tasks.xml,\
               META-INF/,\
               cheatsheets/,\
               intro/,\
               notices.html,\
               book.css,\
               index*/

bin.excludes = build.properties,\
			   customBuildCallbacks.xml
