###############################################################################
# Copyright (c) 2013, 2014 Willink Transformations and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v2.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v20.html
#
# Contributors:
#     E.D.Willink - initial API and implementation
###############################################################################
source.. = src,\
		emf-gen,\
		jet-gen
output.. = bin/
bin.includes = META-INF/,\
               .,\
               plugin.xml,\
               about.html,\
               plugin.properties,\
               .options,\
               model/,\
               build.properties,\
               jet-gen/,\
               emf-gen/,\
               templates/
src.includes = about.html

