Commit Graph

93 Commits

Author SHA1 Message Date
25e5efaf9e Merge pull request #94680 from bruvzg/fix_net_detection
Replace .NET detection code with `ClassDB::class_exists("CSharpScript")`.
2024-07-24 09:59:42 +02:00
25f78a5eb6 Replace .NET detection code with ClassDB::class_exists("CSharpScript"). 2024-07-23 23:46:14 +03:00
c34192eb9c [macOS export] Do not stop export on signing errors. 2024-07-23 22:38:05 +03:00
975ee76e2b [macOS] Fix codesigning of .NET helper executables when sandboxing is disabled. 2024-07-18 23:40:49 +03:00
cc6dd8d02c Style: Optimize .svg files with svgo 2024-06-23 08:15:19 -05:00
501c15c5f5 [iOS export] Automatically generate ARM64 simulator library from device library if it's missing. 2024-06-16 10:46:49 +03:00
6d68362f2f Fix issues related to code-signing for macOS exports 2024-06-12 22:26:41 +02:00
86b72d9215 Merge pull request #91377 from bruvzg/macos_privacy
[macOS export] Add support for privacy manifest configuration.
2024-05-15 12:09:34 +02:00
a0dbdcc3ab Replace find with contains/has where applicable
* Replaces `find(...) != -1` with `contains` for `String`
* Replaces `find(...) == -1` with `!contains` for `String`
* Replaces `find(...) != -1` with `has` for containers
* Replaces `find(...) == -1` with `!has` for containers
2024-05-08 12:37:42 +02:00
059ddc41a0 [macOS export] Add support for privacy manifest configuration. 2024-04-30 23:31:56 +03:00
339cb0e2a2 Merge pull request #90428 from bruvzg/macos_detect_helper_exes
[macOS export] Detect embedded helper executables using MachO header.
2024-04-29 13:00:34 +02:00
a057158d75 Revert pack trimming introduced by #82084 2024-04-10 12:00:04 +02:00
bf558adcdd [.NET] Disable output embedding on macOS, move it to the advanced options on other platforms. 2024-04-09 17:47:39 +03:00
bae27340c9 [macOS export] Detect embedded helper executables using MachO header. 2024-04-09 13:19:24 +03:00
5e6adb4a2d Merge uid_cache.bin and global_script_class_cache.cfg after mounting PCKs
fixes godotengine#82061
fixes godotengine#61556

Also, distinguish between main pack and DLC packs.
It's desirable to downloaded content to be as small as possible. This change avoids bloating non-main pack files with new versions of resources that are all read on startup and never used again. They have no effect if loaded after startup.
- project.godot/project.binary file
- extension_list.cfg
- app icon and boot_splash
- .ico and .icns files (these can still be opted in for DLC by listing them explicitly in the include filter)
2024-03-06 12:14:21 -05:00
ae603f2dc6 Merge pull request #87908 from bruvzg/mac_gen_plist
[macOS] Generate min. `Info.plist` for frameworks if it's missing. Validate framework bundle ID characters.
2024-02-13 17:24:07 +01:00
747977807a Merge pull request #87657 from bruvzg/app_dist
[macOS export] Allow unpacked .app export in "Distribution" export mode.
2024-02-13 17:23:59 +01:00
164ec4929f Merge pull request #86934 from bruvzg/mac_icon_fix
[macOS export] Fix RLE icon generation.
2024-02-13 17:23:25 +01:00
1c1036567a [macOS] Generate min. Info.plist for frameworks if it's missing. Validate framework bundle ID characters. 2024-02-03 19:48:21 +02:00
34723b0d3a [macOS export] Allow unpacked .app export in "Distribution" export mode. 2024-01-28 00:02:20 +02:00
95b27fe8c7 Reorganize code related to editor theming
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.

Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.

All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01:00
491077239c [macOS/iOS export] Add option to set custom Info.plist data. 2024-01-11 21:05:35 +02:00
bf65c6514f [macOS export] Fix RLE icon generation. 2024-01-07 18:58:46 +02:00
7035cf8c90 Add logging when macOS export will fail due to disabled texture formats. Since ETC2 ASTC is required for universal builds, also ensure it is enabled for them. 2024-01-05 02:44:59 -08:00
773b4d7764 Ensure more export errors are reported to users
Also fixes the timing issue when exporting all
presets at the same time, where the error report
would try to appear while the progress dialog
was still visible.
2023-12-06 15:26:07 +01:00
8f2b701892 Fix order of operations for macos template check 2023-11-26 23:26:32 +01:00
03662020a9 [macOS export] Improve icon generation. 2023-11-06 15:04:12 +02:00
6557e8aaaa [macOS] Remove deprecated altool notarization support, add warning for rcodesign used with C# version. 2023-11-02 10:15:41 +02:00
e45cc9c72b Use "version" project setting as macOS/iOS "short_version" fallback. 2023-10-20 19:31:08 +03:00
5d300016a3 Merge pull request #81969 from bruvzg/macsign
[macOS export] Fix GDExtension framework `+x` flag errors, allow recursive signing on non macOS platform.
2023-10-03 17:21:15 +02:00
1887a9df19 [macOS/Windows] Add optional ANGLE backed OpenGL renderer support. Add EGL_ANDROID_blob_cache caching.
Co-authored-by: Riteo <riteo@posteo.net>
2023-09-21 14:21:00 +03:00
f316283823 [macOS export] Fix GDExtension framework +x flag errors, allow recursive signing on non macOS platform. 2023-09-20 12:21:18 +03:00
6de34fde27 Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
ada360affe Add a button in the export dialog to fix missing texture formats 2023-08-17 02:56:42 -05:00
ad4480bf2e Add a "version" project setting and use it in new export presets
This makes it easy to retrieve the project version at runtime
for display purposes, while simplifying the export preset configuration.
You can now leave the version empty unless you need to override it on a per-preset
basis.

Since export presets save the values of default values to the `export_presets.cfg`
file, this change only affects export presets created after this commit was merged.
2023-08-04 10:29:33 +02:00
56bd7adae4 [macOS Export] Disable unpacked .app bundle export on Windows. 2023-07-27 13:21:23 +03:00
076ef3bf6a iOS: Add export_project_only flag 2023-07-17 11:45:03 +02:00
7e21eb7e00 Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
4790da7900 [macOS] Implement optional native file selection dialog support for sandboxed apps. 2023-07-12 22:36:24 +03:00
1da09fd477 Merge pull request #79062 from MewPurPur/svg-optimizations
Optimize SVG icons and remove unused Transpose icon
2023-07-12 21:02:53 +02:00
6960a1d0e8 Merge pull request #78248 from felaugmar/load-svg-adjustable-scale
Added `Image::load_svg_from_(buffer|string)`
2023-07-12 15:09:03 +02:00
fe194f8db0 Optimize SVG icons and remove unused Transpose icon 2023-07-07 17:58:15 +03:00
dcc92c174e Remove uses of vformat() with no placeholders
This is identical to passing the string directly.
2023-06-28 16:27:55 +02:00
26eb3db234 Added Image's load_svg_from_(buffer|string)
No core dependency to the svg module.
2023-06-23 00:43:43 -03:00
90446fe9f3 SCons: Move platform logo/run icon to export folder
Follow-up to #75932.
Since these icons are only used by the export plugin, it makes sense to
move them and generate the headers there.

The whole `detect.is_active()` logic seems to be a leftover from before
times, as far back as 1.0-stable it already wasn't used for anything.

So I'm removing it and moving the export icon generation to
`platform_methods`, where it makes more sense.
2023-06-20 13:16:37 +02:00
a981158d1a macOS: Finish checking templates before validating texture formats 2023-06-19 21:36:31 -05:00
41a75cfa4f Allow exporting release Android builds without a debug keystore 2023-06-19 01:00:13 -03:00
c7f4e3fd25 [macOS export] Fix lipo file handling. 2023-06-16 11:07:56 +03:00
54a8adfd50 Merge pull request #75984 from KoBeWi/ConsoleMcWrap
Rename console script to wrapper
2023-06-12 22:54:24 +02:00
9e4315bb50 Style: Harmonize header includes in platform ports
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:

Includes from the platform port or module should be included with relative
paths (relative to the root folder of the modular component, e.g.
`platform/linuxbsd/`), in their own section before Godot's "core" includes.

The `api` and `export` subfolders also need to be handled as self-contained
(and thus use relative paths for their "local" includes) as they are all
compiled for each editor platform, without necessarily having the api/export
matching platform folder in the include path.
E.g. the Linux editor build will compile `platform/android/{api,export}/*.cpp`
and those need to use relative includes for it to work.
2023-06-08 15:19:19 +02:00