###############################################################################
# Copyright (c) 2010, 2018 Mia-Software 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:
#    Fabien Giquel (Mia-Software) - initial API and implementation
#	 Fabien Giquel (Mia-Software) - Bug 533168 - (releng) OutOfMemory during quality postprocessing because large number of checkstyle warnings
###############################################################################
bin.includes = .,\
               model/,\
               META-INF/,\
               plugin.xml,\
               plugin.properties,\
               about.ini,\
               about.html,\
               about.mappings,\
               about.properties,\
               modeling32.png
jars.compile.order = .
source.. = src-gen/
output.. = bin/
src.includes = about.html
