###############################################################################
# Copyright (c) 2000, 2003 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
bin.includes = plugin.properties,\
               icons/,\
               *.jar,\
               plugin.xml,\
               about.html,\
               webapp/
jars.compile.order = updateui.jar,\
                     webapp/WEB-INF/lib/update-servlets.jar
src.includes = about.html,\
               schema/
source.updateui.jar = src/
source.webapp/WEB-INF/lib/update-servlets.jar = src_webapp
jars.extra.classpath = ../org.eclipse.tomcat/servlet.jar
