###############################################################################
# Copyright (c) 2000, 2014 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
###############################################################################

custom = true

####Even though marked as custom, the content of the build.properties needs to be updated to ensure correctness of RCP app exported 
root.permissions.755=${launcherName}

root.win32.win32.x86_64=file:bin/win32/win32/x86_64/launcher.exe
root.win32.win32.x86_64.permissions.755=launcher.exe

root.linux.gtk.ppc64le=bin/gtk/linux/ppc64le,gtk_root
root.linux.gtk.ppc64le.permissions.755=launcher

root.macosx.cocoa.x86_64=bin/cocoa/macosx/x86_64
root.macosx.cocoa.x86_64.permissions.755=Contents/MacOS/${launcherName}

root.macosx.cocoa.arm64=bin/cocoa/macosx/arm64
root.macosx.cocoa.arm64.permissions.755=Contents/MacOS/${launcherName}

root.linux.gtk.x86_64=bin/gtk/linux/x86_64,gtk_root
root.linux.gtk.x86_64.permissions.755=libcairo-swt.so

