##
#  Copyright (c) 2018 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
##
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
               icons/,\
               .,\
               .options,\
               about.html,\
               plugin.xml,\
               plugin.properties
src.includes = about.html
