Commit Graph

72 Commits

Author SHA1 Message Date
Rémi Verschelde
96b8f89a22 Linux: Update to new SDK with GCC 13, add ARM64 and ARM32 2023-11-01 17:42:57 +01:00
bruvzg
7b9e4271f4 [macOS] Use notarytool instead of deprecated altool. 2023-10-31 19:26:52 +02:00
Rémi Verschelde
ad9e3b238a Merge pull request #87 from YuriSizov/publish-maven
Publish Android library from the main build-release script
2023-10-11 20:43:40 +02:00
Yuri Sizov
9d40b39c01 Publish Android library from the main build-release script 2023-10-11 20:08:40 +02:00
Rémi Verschelde
75877451f2 .NET: Add support for iOS builds 2023-10-04 01:15:30 +02:00
Rémi Verschelde
79967d5bb9 Drop UWP build scripts since it was removed upstream 2023-09-21 15:33:31 +02:00
Rémi Verschelde
9f25ceccfb .NET: Add support for Android builds 2023-09-05 10:03:29 +02:00
Fredia Huya-Kouadio
0780ea4a4f Add logic to upload the Godot Android library to MavenCentral
Add environment variables to sign the release build for the Godot
Android editor and to publish the library to MavenCentral.
If the environment vars are not defined, we do a simple unsigned
`release_debug` build for the Android editor.

Change `config.sh.in` template to use single quotes by default, to
prevent expanding special characters in environment variables.

To publish to MavenCentral, a new `build-android/upload-mavencentral.sh`
script is added. It needs to run after the build using gradle, but we
still want it to be optional and used only when making an official
release, so we copy the compiled sources in the first step.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-05-25 09:28:43 +02:00
Rémi Verschelde
e3827e123c build-release: Rename --publish-nuget option to -n
I can never remember the long form.
2022-11-16 13:44:30 +01:00
bruvzg
b5240cd977 Add console wrapper app to handle console i/o redirection on Windows. 2022-10-17 11:20:16 +03:00
Rémi Verschelde
631c5d216e Merge pull request #73 from godotengine/build-release-publish-nuget-only 2022-10-13 15:29:11 +02:00
Rémi Verschelde
eecf436ac7 build_release: Allow -b none --publish-nuget --no-cleanup --no-tarball
Useful when I forget to add `--publish-nuget` the first time and want to
bypass the builds already packaged, and only publish the nupkgs.
2022-10-13 15:26:42 +02:00
Rémi Verschelde
f95a42611b Unify target/tools arguments after upstream change 2022-10-13 14:10:59 +02:00
Rémi Verschelde
872c9bfe0e Fix wildcard expansion for bash in --publish-nuget
Apparently this worked under zsh but not under bash.
2022-09-14 15:54:40 +02:00
Raul Santos
e244d6f9e3 Add support for publishing NuGet packages 2022-09-10 03:45:12 +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
0bd0362372 Web: Handle new template names and dlink_enabled=yes
Follow-up to https://github.com/godotengine/godot/pull/65094.

Also reverts LTO change from #62, we found that while it's much slower
to link, full LTO still produces smaller binaries and that's quite
important for the Web platform.
2022-09-07 10:28:28 +02:00
Rémi Verschelde
2c6469a904 Web: Rename javascript to web 2022-08-29 15:09:39 +02:00
Rémi Verschelde
dd1128fea0 JavaScript: Re-enable build for 4.0 now that WebGL 2 works 2022-08-26 14:44:05 +02:00
Aaron Franke
d68cf1a26e CPU architecture name changes for Windows/Linux outputs from SCons 2022-08-25 09:28:45 -05:00
Aaron Franke
9973556e65 CPU architecture name changes for Windows, Mac, and Linux templates 2022-07-26 12:05:43 +02:00
Aaron Franke
e544bb91dc CPU architecture folder name changes 2022-07-22 18:30:56 -05:00
bruvzg
0dc9509c1f Rename OSX to macOS and iPhoneOS to iOS. 2022-07-21 12:23:09 +02:00
Rémi Verschelde
edd1194d3f macOS and iOS: Link MoltenVK statically
Also move angle to a 'deps' folder for all downloaded or manually copied
deps used by the builds.
2022-07-21 12:23:09 +02:00
Rémi Verschelde
6463e8b60a Port scripts to Godot 4.0.dev, remove server build
The `server` platform has now been replaced by the "headless" `DisplayServer`
which is registered on all desktop platforms.

Disable JavaScript and UWP builds which are not currently supported in 4.0.
2022-07-21 12:23:09 +02:00
Rémi Verschelde
26bb927614 Windows: Add .cmd script to run Mono editor with console
Same as done for non-Mono builds already.
Fixes https://github.com/godotengine/godot/issues/61672.
2022-06-10 12:17:13 +02:00
Rémi Verschelde
8adfdd068e Windows: Use osslsigncode from PATH for signing
We were shipping a pre-built version but it only works on specific distros
as it's tightly coupled to openssl. When upgrading from F34 to F35 it started
segfaulting.

We now rely on the version packaged by Fedora which should be installed on the
host, or compiled and installed manually in PATH by users.
2022-05-10 10:39:42 +02:00
Rémi Verschelde
59559971b5 Android: Add editor build for arm64v8/x86_64 (no Mono for now) 2022-03-30 15:44:10 +02:00
Rémi Verschelde
45abfae75f Add check to prevent mistakes with templates version
Also switched web release dir to use templates version as it's what we
use online.
2022-03-15 10:43:43 +01:00
Rémi Verschelde
7ac3b65e39 Windows: Delete bat files after zipping 2022-01-31 23:42:25 +01:00
bruvzg
0d2393cf02 [Windows] Generate "cmd" file to run Godot with open console. 2022-01-13 19:05:03 +02:00
Rémi Verschelde
c2c68da015 macOS: Source entitlements from Git repo misc/dist/osx
Now both the standard and the mono build need the same entitlements,
so we use the same file.
2021-10-21 13:47:04 +02:00
Rémi Verschelde
e11c111d4a Fix release tarball folder name after #44 2021-08-04 13:40:18 +02:00
Rémi Verschelde
6824ba765b Move ANGLE download to deps directory
We'll reuse it in 4.0 for MoltenVK.
2021-07-30 10:08:35 +02:00
Rémi Verschelde
295431f722 Update scripts for overhauled build containers (3.x-mono-6.12.0.147)
Cf. https://github.com/godotengine/build-containers/pull/84

- Linux builds are now done on Fedora using a custom Godot SDK instead of
  relying on an old Ubuntu version for portability.
  Removes need for various workarounds.
- macOS Mono builds now include support for Apple Silicon / arm64, both
  architectures are concatenated in universal binaries.

This new config is compatible with the `3.x` branch for Godot 3.4.
It might or might not work as is for `master` / Godot 4.0. Porting it will
be the next step.
2021-07-13 12:12:05 +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
2e84f0b015 macOS signing: Prefix local variables with _ to prevent overriding globals 2021-04-06 17:06:51 +02:00
Rémi Verschelde
01bf08cd9b OSX: Dummy sign templates with linker-signed
This should fix potentially improper signing done by osxcross,
and allow running those on Apple M1.
2021-03-29 21:23:57 +02:00
Rémi Verschelde
2d656c918b OSX: Cosmetic change to build-release.sh signing routine 2021-03-29 21:23:30 +02:00
Rémi Verschelde
e0d7b61e0e Strip Linux and macOS binaries in addition to Windows ones
For other platforms:

- Android is stripped by gradle already.
- HTML5 already has stripped release builds.
  Debug builds could be stripped with fastcomp's wasm-strip but it might be
  deprecated?
- iOS is a static lib and shouldn't be stripped.
- UWP can't be stripped by default GNU strip it seems.
2021-03-28 01:26:44 +01:00
Rémi Verschelde
55373a69fb macOS: Make notarization waiting loop more reliable
The previous one would sometime return early even though it's still 'in progress'.
Hopefully this command is more reliable.
2021-03-28 01:26:44 +01:00
Fabio Alessandrelli
236efef7aa [HTML5] Produce the editor zip in release folder.
It's time we start distributing the web editor as self-hostable
application if so desired.
2021-03-14 12:00:15 +01:00
Rémi Verschelde
365596d3f0 Fix Mono Windows signing after #24 2021-03-09 08:35:06 +01:00
Rémi Verschelde
c371cddcb5 Mono/macOS: Codesign the editor binary
Using --deep to also sign the AOT cross-compilers.
2021-03-04 15:19:10 +01:00
Rémi Verschelde
a5d0f200b2 Mono/macOS: Change .app packaging following https://github.com/godotengine/godot/pull/43768
This allows signing the editor .app (will be done in next commit) and should
let users sign their macOS exports.

Co-authored-by: Shane Liesegang <shane@techie.net>
2021-03-04 15:19:10 +01:00
Sergey Minakov
6499c248c1 macOS runtime entitlements
Enables permission request to camera and microphone for signed .app
2021-02-28 03:55:09 +03:00
Rémi Verschelde
02510df163 Merge pull request #20 from Faless/js/editor
[HTML5] Add tools builds to release scripts.
2021-02-12 20:24:16 +01:00
Fabio Alessandrelli
21da21455b [HTML5] Add tools builds to release scripts.
Will unpack the zip, compress each file with brotli, and place them into
the `web` folder (to be uploaded to the web editor host server).
2021-02-12 19:15:13 +01:00
Hein-Pieter van Braam-Stewart
1dddb1fb3a Add support for signing OSX binaries
Note this requires a real mac (for now)
2021-02-12 17:52:15 +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