###############################################################################
# Copyright (c) 2003, 2007 QNX Software Systems 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:
#     QNX Software Systems - initial API and implementation
###############################################################################

bin.includes = plugin.xml,\
               plugin.properties,\
               about.html,\
               icons/,\
               .,\
               META-INF/
javadoc.packages = org.eclipse.cdt.debug.ui.*,\
                   org.eclipse.cdt.debug.ui.sourcelookup.*
source.. = src/
src.includes = schema/,\
               about.html
