# Copyright (c) 2014, 2015 Eike Stepper (Berlin, Germany) 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
#
# Contributors:
#    Eike Stepper - initial API and implementation

# UpdateTrigger = 20150915-1125

bin.includes = .,\
               icons/,\
               META-INF/,\
               plugin.xml,\
               plugin.properties,\
               about.html,\
               about.mappings
jars.compile.order = .
source.. = src/
output.. = bin/
src.includes = about.html,\
               pom.xml

generateSourceReferences = true
