# Copyright (c) 2006, 2018 IBM Corporation 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: 
#   IBM - initial API and implementation
#   Kenn Hussey - 535301
#

# NLS_MESSAGEFORMAT_VAR
bin.includes = about.*,\
               modeling32.png,\
               plugin.*,\
               META-INF/
src.includes = about.html
javacSource = 1.5
javacTarget = 1.5
