#/***********************************************************************************************************************
# * Copyright (c) 2008 empolis GmbH and brox IT Solutions GmbH. 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
# *
# *        Juergen Schumacher (empolis GmbH) - initial API and implementation
# **********************************************************************************************************************/
source.. = code/src/
output.. = code/bin/
bin.includes = META-INF/,\
               .,\
               about.html,\
               OSGI-INF/
src.includes = about.html
