###############################################################################
# Copyright (c) 2005, 2007 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
#

###############################################################################
#/**
# * <copyright>
# *
# * Copyright (c) 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
# * 
# 
# *
# * </copyright>
# *
# * $Id: build.properties,v 1.2 2008/04/11 10:35:43 asobolev Exp $ build.properties,v 1.1 2005/11/25 20:30:36 cdamus Exp $
# */
bin.includes = eclipse_update_120.jpg,\
               feature.properties,\
               feature.xml
root=rootfiles
generate.feature@org.eclipse.dltk.rse.source=org.eclipse.dltk.rse
