# Copyright (c) 2005, 2007 IBM Corporation 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:
#   IBM - initial API and implementation
#
# $Id: build.properties,v 1.6 2007/04/04 02:19:59 khussey Exp $

# NLS_MESSAGEFORMAT_VAR
source.. = src/
output.. = bin/
bin.includes = about.html,\
               plugin.*,\
               .,\
               icons/,\
               META-INF/
src.includes = about.html
exclude.. = **/doc-files/**
javacSource = 1.5
javacTarget = 1.5
