###############################################################################
# Copyright (c) 2019 Mia-Software 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:
#     Unknown - initial API and implementation
###############################################################################
# Copyright (c) 2013 Mia-Software
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v2.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v20.html
# 
# Contributors:
#    Gregoire Dupe (Mia-Software) - Bug 417789 - org.eclipse.emf.facet.util.core should not so much dependencies
#    Fabien Treguer (Soft-Maint) - Bug 367168 - [Unit Test Failure][0.2/3.8] org.eclipse.emf.facet.util.core.tests.internal.PluginUtilsTests.testPluginUtils
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
               .,\
               about.html,\
               resources/
src.includes = about.html
