###############################################################################
# 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
###############################################################################
bin.includes = META-INF/,\
               about.html,\
               about_files/,\
               .,\
               OSGI-INF/,\
               lib/libjnlua5.1.jnilib,\
               lib/liblua5.1.jnilib
javacProjectSettings = true
# 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 = META-INF/,\
               OSGI-INF/,\
               about.html,\
               about_files/
