###############################################################################
# Copyright (c) 2013 Sierra Wireless 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:
#     Sierra Wireless - initial API and implementation
###############################################################################
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
               .,\
               about.html,\
               LICENSE.txt,\
               OSGI-INF/
# The default encoding to use to compile the project
javacDefaultEncoding.. = UTF-8
# Use to specify that PDE should check synchronisation between
# java setting (.settings/org.eclipse.jdt.core.prefs) and this build.properties
javacProjectSettings = true
# The java version of the source code
javacSource=1.6
# The java version of the byte code targeted
javacTarget=1.6
src.includes = LICENSE.txt,\
               META-INF/,\
               OSGI-INF/,\
               about.html
