##
#  Copyright (c) 2009-2010 Thales Corporate Services S.A.S.
#  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:
#      Thales Corporate Services S.A.S - initial API and implementation
##

# NLS_MESSAGEFORMAT_VAR
bin.includes = feature.*,\
	               epl-v10.html,\
	               license.html,\
               eclipse_update_120.jpg
src.includes = epl-v10.html,\
               license.html
root=rootfiles
generate.feature@org.eclipse.egf.model.ftask.source=org.eclipse.egf.model.ftask
