36 Commits

Author SHA1 Message Date
Rémi Verschelde
d7733c2cff Apple: Update build script for Xcode 26.1.1 SDKs (#144)
Follow-up to https://github.com/godotengine/build-containers/pull/159.
2025-12-19 15:59:51 +01:00
Rémi Verschelde
8a943c3f00 Add support for experimental .NET builds (GDExtension) (#136)
This is eventually meant to be unified with the "classical" builds,
but for the initial testing we start with a dedicated "dotnet" build.

Co-authored-by: Raul Santos <raulsntos@gmail.com>
2025-12-02 10:15:49 +01:00
Stuart Carnie
9fbd2dbc44 Apple: Update to Apple 26.0 SDKs (#129) 2025-10-18 12:02:45 +02:00
Stuart Carnie
e7412b53cd Apple: add visionOS build support; unify build container
iOS builds now use the godot-embedded build container, like visionOS
(and eventually tvOS).

Refactored iOS build script to be easier to maintain and duplicate
for visionOS.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-06-13 23:43:49 +02:00
Rémi Verschelde
d95bc9b24c Update toolchains based on Fedora 42 for Godot 4.5 2025-06-13 23:39:07 +02:00
Ricardo Sanchez-Saez
38dbce0679 [build-ios] Rename 'IOS_TOOLCHAIN_PATH' to 'APPLE_TOOLCHAIN_PATH' 2025-05-14 07:35:56 +01:00
Rémi Verschelde
8c9fd0328b Define redirect_build_objects=no to avoid copying GBs of bin/obj 2025-05-13 23:23:27 +02:00
Rémi Verschelde
5e3a9b9cdc Update toolchains based on Fedora 41 for Godot 4.4 2024-12-16 23:01:51 +01:00
Rémi Verschelde
15810984ed macOS/iOS: Update SDK versions to Xcode 15.4
Following merge of https://github.com/godotengine/build-containers/pull/141.
2024-06-20 10:06:58 +02:00
Rémi Verschelde
0f11496664 macOS/iOS: Update SDK versions to Xcode 15.2
Following merge of https://github.com/godotengine/build-containers/pull/138.
2024-03-13 22:04:40 +01:00
Rémi Verschelde
65cca8165a Update scripts for new Fedora 39 based images for 4.2-beta3 and later
Follow-up to https://github.com/godotengine/build-containers/pull/128.

Also reverts #88 since these new images include JDK 17, and the closure
compiler issue was fixed upstream.

And removes the manual install of gettext which is now also part of the
images.

X11 libs should not be needed to generate the Mono glue anymore (they've been
unnecessary for a while already).
2023-10-24 11:45:29 +02:00
Rémi Verschelde
75877451f2 .NET: Add support for iOS builds 2023-10-04 01:15:30 +02:00
Rémi Verschelde
72cb40ffad Install gettext in all editor build containers
This enables compiling the PO files to smaller binary MO files,
reducing the size of the editor binary which embeds them.

gettext will be added to the base container but I haven't done it
yet, so for now adding it manually here.
2023-02-14 11:20:33 +01:00
Rémi Verschelde
9ad27f9f92 Xcode: Update macOS and iOS scripts for to Xcode 14.1 (macOS 13.0, iOS 16.1) 2022-11-03 13:44:56 +01:00
Rémi Verschelde
f95a42611b Unify target/tools arguments after upstream change 2022-10-13 14:10:59 +02:00
Rémi Verschelde
c996282abe .NET 6: Further update build scripts for 4.0, works for desktop releases
Does not attempt to build Android, iOS and Web since it's not supported
currently.
2022-09-08 15:45:39 +02:00
Rémi Verschelde
23187596fb .NET 6: Initial port of build scripts for 4.0
Not working yet but cleans up a lot of the Mono stuff we won't need anymore.
2022-08-30 10:12:58 +02:00
bruvzg
0dc9509c1f Rename OSX to macOS and iPhoneOS to iOS. 2022-07-21 12:23:09 +02:00
Rémi Verschelde
a0675bb238 Use new containers with Fedora 36, Mono 6.12.0.179, Xcode 13.3.1
Remove ad-hoc java install from Android build script, it's now included
in the build container.
2022-05-24 10:38:22 +02:00
Rémi Verschelde
51b552afc1 iOS: Further changes to disable non-working arm64 simulator builds
Missed in #41.
2021-07-13 12:11:36 +02:00
Rémi Verschelde
fbe75b39bc iOS: Disable non-working arm64 simulator builds
Cf. https://github.com/godotengine/build-containers/pull/85
2021-07-12 15:27:07 +02:00
bruvzg
a2649d96d0 Add Apple Silicon iOS simulator build support. Build main lib and mono libs as .xcframeworks. 2021-06-03 08:44:06 +03:00
Rémi Verschelde
9d80bcad67 Use images version 3.x-mono-6.12.0.122
Follow-up to https://github.com/godotengine/build-containers/pull/77.

OSX/iOS: Now using Xcode 12.4 and newer osxcross
`NO_LDID` no longer needed as osxcross is no longer fake-signing with LDID.
2021-03-28 01:34:12 +01:00
Andrii Doroshenko (Xrayez)
f40716e53e Make BUILD_NAME globally configurable 2021-03-06 17:16:24 +02:00
Rémi Verschelde
2190e23987 Use new production=yes option
Equivalent to debug_symbols=no use_lto=yes use_static_cpp=yes.
We keep LTO disabled for iOS as users need to relink on deploy, and that's very slow
and memory hungry with LTO.
2021-02-22 12:13:13 +01:00
Rémi Verschelde
6bee8dec2e iOS: arkit and camera no longer built here as of 3.2.4 2021-01-27 21:08:23 +01:00
Rémi Verschelde
c44015dcec OSX: Build universal binaries with ARM64 2020-11-19 13:09:49 +01:00
Rémi Verschelde
9ddda05e01 Build against containers with Xcode 12.0.1 2020-11-19 13:07:35 +01:00
Rémi Verschelde
0341022b36 Mono: Add support for iOS 2020-04-16 11:04:42 +02:00
Rémi Verschelde
067d3f3a49 Refactor build scripts to allow building only Classical or Mono
The in-container build scripts now get passed CLASSICAL and MONO env
variables which can be used to build one or the other, or both
(default).

`build.sh`, `build-release.sh` and `build-templates.sh` now all expect
command line switches to specify the version details, and optionally
which flavor to build.

For example to build Mono only:

  ./build.sh -v 3.2-beta4 -g master -b mono
  ./build-release.sh -v 3.2-beta4 -b mono
  ./build-templates.sh -v 3.2-beta4 -t 3.2.beta4 -b mono

Also took the opportunity to do some extra cleanup, like removing
unnecessary `builtin_*` options since they all default to True, even
for Linux in 3.2, as well as `use_lto` and `use_static_cpp` options
on platforms which don't implement them.

And I improved the `build-release.sh` script to be a bit easier to
read, and avoid having too many stray folders to cleanup.
The build scripts should now generate the final structure that we'd use
on the official mirrors, with the `mono` distribution as a subfolder of
the main release folder.
2019-12-13 20:05:40 +01:00
Rémi Verschelde
7b376804d7 iOS: Handle split arkit/camera modules 2019-12-13 13:10:00 +01:00
Rémi Verschelde
84f058dd24 Update macOS and iOS to darwin18 osxcross SDK 2019-12-02 10:01:14 +01:00
Rémi Verschelde
0c2d825451 Port build scripts for Godot 3.2 / master branch
- Add Mono builds for Android.
- Remove now unused `MONO*_PREFIX` env variables (replaced by `mono_prefix`
  command line option).
- Update iOS to SDK 12.4 and darwin17 for proper ARKit support.
- Drop 32-bit support for iOS (armv7, x86).
2019-12-02 09:59:49 +01:00
Rémi Verschelde
09b605f7b9 Make number of build cores configurable in config.sh 2019-12-02 09:57:41 +01:00
Rémi Verschelde
e583fcba03 Cosmetic cleanup and slight refactoring
- Drop unused mandatory -t argument in build.sh.
- Remove infinite retries for OSX and iOS, builds now seem to
  succeed right away and it prevents exiting the script.
- Factor out iOS SDK version.
- Make build order consistent in build.sh and build-release.sh
- Removing trailing whitespace.
2019-12-02 09:57:40 +01:00
Hein-Pieter van Braam-Stewart
8aba1f833a Initial commit 2019-10-01 22:06:35 +02:00