conda-forge / deno-feedstock

A conda-smithy repository for deno.
BSD 3-Clause "New" or "Revised" License
2 stars 6 forks source link

osx-arm64 needs to be built from source #13

Open msarahan opened 2 years ago

msarahan commented 2 years ago

Solution to issue cannot be found in the documentation.

Issue

I gave up on cross-compiling in #10 and used a binary repack. It would be better to build from source somehow - either fix the cross-compiling or build on native Apple Silicon if/when it is available.

Installed packages

not relevant

Environment info

not relevant
msarahan commented 1 year ago

linux-aarch64 added in #49

mdekstrand commented 1 year ago

linux-aarch64 cross-compile added in #68 so we can actually publish packages (since Travis keeps tipping over).

This does require disabling V8 snapshotting, which doesn't work in a cross-build (although there is a modified version of Cargo that can turn it back on, at least for Linux targets). This comes with a small performance hit at startup (imperceptible in my tests).

mdekstrand commented 10 months ago

Cross-building is even harder than it looks — the initial cross-build produced binaries with a couple of problems in the build architecture baked in to the binary.

I fixed this in #82, but it won't work on OSX. Deno really doesn't support cross-compilation, and I'm pretty sure the cargo-cross-build hack won't work on OSX since Rosetta only translates x86_64 to ARM, not the other way around. denoland/deno#13948 and comments document some of the things needed to support cross-compilation.