# Copyright (c) 2008-2010 Sonatype, Inc.
# 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:
#      Sonatype, Inc. - initial API and implementation
#

bin.includes = plugin.xml,\
               META-INF/,\
               .,\
               plugin.properties,\
               about.html
jars.compile.order = .
output.. = target/classes
source.. = src/

# need to force optional/nongreedy dependency on build classpath 
jars.extra.classpath=platform:/plugin/org.eclipse.epp.usagedata.gathering
