###############################################################################
# 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/libjnlua52.dylib,\
               lib/liblua52.dylib
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
