###############################################################################
# Copyright (c) 2011 IBM Corporation and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
source.. = src/
bin.includes = META-INF/,\
 				.,\
               plugin.properties,\
               ant_tasks/pdepublishing-ant.jar,\
               plugin.xml,\
               about.html
jars.compile.order = .,\
                     ant_tasks/pdepublishing-ant.jar
source.ant_tasks/pdepublishing-ant.jar = src_ant/
output.ant_tasks/pdepublishing-ant.jar = bin_ant/
extra.ant_tasks/pdepublishing-ant.jar = platform:/plugin/org.apache.ant
jars.extra.classpath = platform:/plugin/org.apache.ant/lib/ant.jar
src.includes = about.html
