###############################################################################
# Copyright (c) 2000, 2004 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
###############################################################################

filesetTemplate1.description= fileset type with include clause
targetTemplate1.description= public target
targetTemplate2.description= private target
propertyTemplate1.description= property with name and location
propertyTemplate2.description= property with name and value
macrodefTemplate.description= macrodef with a single attribute
deleteTemplate1.description= delete files in a fileset
deleteTemplate2.description= delete files in a referenced fileset

javacTemplate1.description= add a javac task
buildFileTemplate1.name= Buildfile template
buildFileTemplate1.description= simple buildfile with two targets
