Reenable macOS .app export from Windows, add warnings about Unix permissions.
This commit is contained in:
parent
05d985496c
commit
1f0b1220d2
|
@ -357,17 +357,13 @@ List<String> EditorExportPlatformMacOS::get_binary_extensions(const Ref<EditorEx
|
||||||
list.push_back("dmg");
|
list.push_back("dmg");
|
||||||
#endif
|
#endif
|
||||||
list.push_back("zip");
|
list.push_back("zip");
|
||||||
#ifndef WINDOWS_ENABLED
|
|
||||||
list.push_back("app");
|
list.push_back("app");
|
||||||
#endif
|
|
||||||
} else if (dist_type == 1) {
|
} else if (dist_type == 1) {
|
||||||
#ifdef MACOS_ENABLED
|
#ifdef MACOS_ENABLED
|
||||||
list.push_back("dmg");
|
list.push_back("dmg");
|
||||||
#endif
|
#endif
|
||||||
list.push_back("zip");
|
list.push_back("zip");
|
||||||
#ifndef WINDOWS_ENABLED
|
|
||||||
list.push_back("app");
|
list.push_back("app");
|
||||||
#endif
|
|
||||||
} else if (dist_type == 2) {
|
} else if (dist_type == 2) {
|
||||||
#ifdef MACOS_ENABLED
|
#ifdef MACOS_ENABLED
|
||||||
list.push_back("pkg");
|
list.push_back("pkg");
|
||||||
|
@ -1903,6 +1899,11 @@ Error EditorExportPlatformMacOS::export_project(const Ref<EditorExportPreset> &p
|
||||||
if (is_executable(file)) {
|
if (is_executable(file)) {
|
||||||
// chmod with 0755 if the file is executable.
|
// chmod with 0755 if the file is executable.
|
||||||
FileAccess::set_unix_permissions(file, 0755);
|
FileAccess::set_unix_permissions(file, 0755);
|
||||||
|
#ifndef UNIX_ENABLED
|
||||||
|
if (export_format == "app") {
|
||||||
|
add_message(EXPORT_MESSAGE_INFO, TTR("Export"), vformat(TTR("Unable to set Unix permissions for executable \"%s\". Use \"chmod +x\" to set it after transferring the exported .app to macOS or Linux."), "Contents/MacOS/" + file.get_file()));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
add_message(EXPORT_MESSAGE_ERROR, TTR("Export"), vformat(TTR("Could not open \"%s\"."), file));
|
add_message(EXPORT_MESSAGE_ERROR, TTR("Export"), vformat(TTR("Could not open \"%s\"."), file));
|
||||||
|
@ -1928,6 +1929,11 @@ Error EditorExportPlatformMacOS::export_project(const Ref<EditorExportPreset> &p
|
||||||
if ((con_scr == 1 && p_debug) || (con_scr == 2)) {
|
if ((con_scr == 1 && p_debug) || (con_scr == 2)) {
|
||||||
err = _export_debug_script(p_preset, pkg_name, tmp_app_path_name.get_file() + "/Contents/MacOS/" + pkg_name, scr_path);
|
err = _export_debug_script(p_preset, pkg_name, tmp_app_path_name.get_file() + "/Contents/MacOS/" + pkg_name, scr_path);
|
||||||
FileAccess::set_unix_permissions(scr_path, 0755);
|
FileAccess::set_unix_permissions(scr_path, 0755);
|
||||||
|
#ifndef UNIX_ENABLED
|
||||||
|
if (export_format == "app") {
|
||||||
|
add_message(EXPORT_MESSAGE_INFO, TTR("Export"), vformat(TTR("Unable to set Unix permissions for executable \"%s\". Use \"chmod +x\" to set it after transferring the exported .app to macOS or Linux."), scr_path.get_file()));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if (err != OK) {
|
if (err != OK) {
|
||||||
add_message(EXPORT_MESSAGE_ERROR, TTR("Export"), TTR("Could not create console wrapper."));
|
add_message(EXPORT_MESSAGE_ERROR, TTR("Export"), TTR("Could not create console wrapper."));
|
||||||
}
|
}
|
||||||
|
@ -2156,6 +2162,11 @@ Error EditorExportPlatformMacOS::export_project(const Ref<EditorExportPreset> &p
|
||||||
_code_sign(p_preset, tmp_app_path_name + "/Contents/Helpers/" + hlp_path.get_file(), hlp_ent_path, false, true);
|
_code_sign(p_preset, tmp_app_path_name + "/Contents/Helpers/" + hlp_path.get_file(), hlp_ent_path, false, true);
|
||||||
}
|
}
|
||||||
FileAccess::set_unix_permissions(tmp_app_path_name + "/Contents/Helpers/" + hlp_path.get_file(), 0755);
|
FileAccess::set_unix_permissions(tmp_app_path_name + "/Contents/Helpers/" + hlp_path.get_file(), 0755);
|
||||||
|
#ifndef UNIX_ENABLED
|
||||||
|
if (export_format == "app") {
|
||||||
|
add_message(EXPORT_MESSAGE_INFO, TTR("Export"), vformat(TTR("Unable to set Unix permissions for executable \"%s\". Use \"chmod +x\" to set it after transferring the exported .app to macOS or Linux."), "Contents/Helpers/" + hlp_path.get_file()));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue