paranext / paranext-core

Electron client, extension host, and C# library for Paranext
https://paranext.github.io/paranext-core/
MIT License
17 stars 2 forks source link

Enable cross-compiling of Platform.Bible builds #1347

Open lyonsil opened 4 days ago

lyonsil commented 4 days ago

Right now we (mostly) only see to be able to build the application on a computer matching the target OS for users. This has a few implications such as: 1) We can't build on one OS (e.g., Windows) and target all the other OSes we'd like (e.g., Linux and macOS). 2) Similar to 1, we don't have a way to produce builds for other targets that could be of interest in the future even if we want to (e.g., iOS or Android). 3) On macOS, we have to use universal builds for ICU libraries or else the architecture of the library builds is tied to whatever the build machine's architecture was. See https://github.com/paranext/paranext-core/pull/1346 for more details.

The main exception to this is that when we build on macOS, we always build for x64 and arm64. It's not clear that this was intentional on our part and is more likely part of ERB scripts or electron-builder itself.

This isn't currently a blocking problem for anything we're focused on, so it's not a high priority.