###############################################################################
# Copyright (c) 2009 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
###############################################################################

pluginName = Mac OS X UI Launching Support
providerName=Eclipse.org

#
# Mac OS X Application Bundle Export Wizard
#
MacOSXAppBundleExporter.label=Mac OS X application bundle
MacOSXAppBundleExporter.description=Package resources into a Mac OS X application bundle on the local file system
