# Copyright (c) 2006, 2011 IBM Corporation, CEA, 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
#   Kenn Hussey (CEA) - 327039
#
# $Id: build.properties,v 1.4 2007/04/04 02:20:03 khussey Exp $

# NLS_MESSAGEFORMAT_VAR
bin.includes = about.*,\
               modeling32.png,\
               plugin.*,\
               META-INF/
src.includes = about.html,\
               model/,\
               templates/
