Commit Graph

67 Commits

Author SHA1 Message Date
324512e11c Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
0cd0f889cf iOS: Weak-link MetalFX 2025-01-16 11:23:46 +11:00
d3e16c9ee2 [iOS] Add options to specify additional entitlements and capabilities in the export settings. 2024-12-02 17:38:19 +02:00
4036270f8d Support for XCode 8+ feature PROVISIONING_PROFILE_SPECIFIER
https://developer.apple.com/documentation/xcode/build-settings-reference\#Provisioning-Profile

Used to allow for specific provisioning profile to be specified by name instead of UUID.

Needed to solve this problem where uuid wasn’t disambiguating: https://stackoverflow.com/questions/45051712/signing-app-with-xcodebuild-command-line-with-provisioning-profile-fails

Allows for specification for release and debug versions through environment variables or through export template attributes.

Debug:
EnvironmentVariable: GODOT_IOS_PROFILE_SPECIFIER_DEBUG
Export template: “application/provisioning_profile_specifier_debug”

Release:
EnvironmentalVariable: GODOT_IOS_PROFILE_SPECIFIER_RELEASE
Export Template: “application/provisioning_profile_specifier_release”
2024-10-28 11:37:55 -07:00
c8ae9e9c76 [iOS] Change default iPad landscape orientation from "left" to "right". 2024-05-29 12:47:49 +03:00
7d03b1de0b Style: Trim trailing whitespace and ensure newline at EOF
Found by apply the file_format checks again via #91597.
2024-05-08 10:12:46 +02:00
7446826ab9 [iOS export] Add support for privacy manifest configuration. 2024-04-16 12:10:12 +03:00
ac57f10f82 [iOS] Update linker flags for Xcode 15.2. 2024-01-19 08:05:42 +02:00
d8a0eed726 [iOS export] Add export options for performance capabilities and min. iOS version. 2024-01-04 19:38:53 +02:00
da3d5f780d [iOS] Remove deprecated LaunchImages support and switch to Storyboard by default. 2023-12-18 22:21:58 +02:00
09d5120865 [iOS] Fix build on Xcode 14 and older. 2023-10-10 09:18:47 +03:00
e1c7104e46 [iOS] Fix build with Xcode 15. 2023-09-27 21:27:15 +03:00
e1d3e18322 [iOS] Fix Xcode project file list. 2023-02-22 13:37:41 +02:00
37d68929e8 Fix .gitignore ignores part of the committed repo. 2023-02-17 13:48:16 +01:00
8a360bc9a3 [iOS] Move name and version information to the Xcode project. 2023-01-10 08:56:45 +02:00
d95794ec8a One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
7467067d23 [iOS] iOS export improvements.
Add export options to set Settings and Notification icons on export.
Automatically fill background of the app store icon instead of failing (with warning).
Update development region to use `en` instead of `English`.
2022-11-17 12:06:15 +02:00
601c42be66 Add ProMotion Support to iOS Exports 2022-10-31 09:33:39 -04:00
26e9145c26 SCons: Cleanup DEBUG, _DEBUG and NDEBUG defines
- `_DEBUG` is MSVC specific so it didn't make much sense to define for
  Android and iOS builds.
- iOS was the only platform to define `DEBUG`. We don't use it anywhere
  outside thirdparty code, which we usually don't intend to debug, so it
  seems better to be consistent with other platforms.
- Consistently define `NDEBUG` to disable assert behavior in both `release`
  and `release_debug` targets. This used to be set for `release` for all
  platforms, and `release_debug` for Android and iOS only.
- Due to the above, I removed the only use we made of `assert()` in Godot
  code, which was only implemented for Unix anyway, should have been
  `DEV_ENABLED`, and is in PoolAllocator which we don't actually use.
- The denoise and recast modules keep defining `NDEBUG` even for the `debug`
  target as we don't want OIDN and Embree asserting all over the place.
2022-09-23 15:21:26 +02:00
c99e8aeac3 [iOS] Extend iOS plugins to support Swift runtime 2022-08-09 20:20:54 +03:00
8823eae328 Rename OSX to macOS and iPhoneOS to iOS. 2022-07-21 09:37:52 +03:00
5fdea69276 [macOS and iOS export] Add localized application name to the translation .plist files. 2022-03-04 09:27:44 +02:00
74fc4410f4 Remove support for ARMv7 (32-bit) on iOS
All iOS devices since the iPhone 5S support ARMv8 (64-bit).

The last iOS version supported on ARMv7 devices is 10.x, which is
too old to run Godot 4.0 projects since the minimum supported
iOS version is 11.0.
2022-02-08 22:11:29 +01:00
57db989a97 [iOS] Fix iOS export with manually specified signing/provisioning data. 2022-01-25 17:13:03 +02:00
fe52458154 Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
f7bcada709 Merge pull request #49137 from RandomShaper/ios_targeted_family
Add iOS export option for device family
2021-05-31 10:34:49 +02:00
19ae8193ee Add iOS export option for device family 2021-05-27 11:46:22 +02:00
1534b4e65e Set schemes' build config to debug/release in iOS Xcode export 2021-05-25 10:26:54 +02:00
efd8f27790 [WIP] Add separate simulator flag for iOS build, change main library to xcframework format. 2021-01-18 10:36:14 +02:00
b5334d14f7 Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
1f94a59859 iOS Export: export modification to support plugins
Added plugin configuration.
Export options now use plugins that could be enabled/disabled.
Plugin changes are observed at runtime.
2020-11-10 16:40:01 +03:00
30783d57cc iOS Modules: separate main platform code from modules
Moved previously builtin modules 'GameCenter', 'AppStore', 'iCloud' to separate modules to be represented as plugin.
Modified 'ARKit' and 'Camera' to not be builtin into engine and work as plugin.
Changed platform code so it's not affected by the move.
Modified Xcode project file to remove parameters that doesn't make any effect.
Added basic '.gdip' plugin config file.
2020-11-10 16:28:29 +03:00
3cd1cb53a0 iOS: Refactoring
Enabled ARC for iOS.
Weakify/Strongify macros for objc blocks.
Removed old version checks.
Specific types for ObjC++ modules to exclude unneeded bridging.
Separate DeviceMetrics class for device specific data.
Replaced old/deprecated functionality.
2020-10-02 15:04:51 +03:00
fe60815d66 iOS SCons: static Vulkan binary usage
Add VMA to iphone platform Use linkflag for iphone building to enforce static linking. Works fine with dynamic '.framework' library
Updated xcode project to use '.a' static library
2020-07-25 21:55:25 +02:00
8e82ab4bf5 iOS Vulkan: copy icd to app 2020-07-25 21:55:23 +02:00
8dc2b267f9 iOS Export: MoltenVK framework for Vulkan support 2020-07-25 21:55:18 +02:00
3ed5ff244f Merge pull request #40298 from Calinou/optimize-ios-splash
Optimize the default iOS splash images
2020-07-14 19:39:28 +02:00
9986439352 Commit other files changed by file_format.sh 2020-07-13 14:14:11 -04:00
2b3c9944b1 Optimize the default iOS splash images
Command used:

    parallel oxipng -o6 --strip --zopfli ::: **/*.png

This saves about 14 KB in total.
2020-07-11 22:31:17 +02:00
d4c541c25a iOS Export: add option to use storyboard for launch screen 2020-07-07 01:46:26 +03:00
864224a5c1 iOS Export: Updated Info.plist. Framework embedding. Fixes for search paths 2020-07-02 12:56:11 +03:00
488879f52b Export: Fix iOS enabling push notifications capability 2020-06-23 12:48:44 +03:00
6a01fbc9a7 Export: Remove system frameworks from xcode template 2020-06-23 12:48:44 +03:00
fdb89a3f9a Rename "Identifier" to "Bundle Identifier" in macOS/iOS export presets
"Bundle Identifier" is more well-understood among macOS and iOS
developers and is less ambiguous.

This is a slight breaking change as export presets will need to be
updated to account for this change.

See https://github.com/godotengine/godot-docs/pull/3295.
2020-06-19 09:59:38 +02:00
21d1ea60a7 Fix exporting corrupted Xcode pbxproj if project name has spaces 2020-03-31 09:37:17 +02:00
7dbe8b65ae Make file formatting comply with POSIX and Unix standards
UTF-8, LF, no BOM, and newlines at the end of files
2020-03-21 17:41:03 -04:00
a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
ccf8778e86 [iOS] Add export options to control external access to user data. 2019-12-03 12:06:54 +02:00
2ef8c5fac5 iOS modular build and export implementation. 2019-12-01 21:57:18 +02:00
c8a8be6dd1 Optimize images losslessly using oxipng -o6 --strip all --zopfli 2019-10-12 23:23:33 +02:00