##
#  Copyright (c) 2009, 2018 Thales Corporate Services S.A.S.
#
#  This program and the accompanying materials
#  are made available under the terms of the Eclipse Public License 2.0
#  which accompanies this distribution, and is available at
#  https://www.eclipse.org/legal/epl-2.0
#
#  SPDX-License-Identifier: EPL-2.0
# 
#  Contributors:
#      Thales Corporate Services S.A.S - initial API and implementation
##
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
               icons/,\
               about.html,\
               .,\
               .options,\
               plugin.properties
src.includes = about.html
