romgrk / fzy-lua-native

Luajit FFI bindings to FZY
118 stars 16 forks source link

Publish universal-darwin #13

Closed clason closed 3 years ago

clason commented 3 years ago

This might be invalid (can't try yet), but there are reports that fzy-lua-native doesn't work (out of the box?) on Apple Silicon. It'd be great if that architecture could be included in the static builds through GHA, either as a separate library or a universal build. (Not sure which is easier.)

Maybe https://github.com/actions/runner/issues/805#issuecomment-744488424 is enough? Or is that only addressing local runners?

If so, do you have any instructions for locally building a native M1 extension?

romgrk commented 3 years ago

Duplicate of #9, indeed M1 is not prebuilt at the moment. @mherna seems to have built the project without difficulty, I'd expect make to be enough.

Not sure what's an universal build? How does that work?

Otherwise if someone wants to build & provide a compiled binary I'd be ok with including it in the repo, at this point the repo should be very stable for a while so I don't expect to need to rebuild the binaries soon.

clason commented 3 years ago

Ah, didn't see that issue (since it was closed without resolution).

If make is enough to build a native binary, that'd be good enough for me (maybe mention it in the README?), but I'd be happy to provide the binary for download as well. (I don't have an M1 yet.)

(A universal binary is a binary that combines both x86 and ARM code, so the same binary runs -- natively -- on both architectures; see https://developer.apple.com/documentation/apple-silicon/building-a-universal-macos-binary)

romgrk commented 3 years ago

Interesting feature, but I'd rather just compile separate binaries for separate architectures, because that's what we are already doing for all other OS:es.

And for the native binary sure, if someone (that I can trust - public profile, contributions to known repos) wants to make and open a PR with the missing binary I'll merge it. Signed commit would be nice.

clason commented 3 years ago

Interesting feature, but I'd rather just compile separate binaries for separate architectures, because that's what we are already doing for all other OS:es.

Yeah, makes sense. I thought universal would be easier (especially if it allows cross-compilation without native runners), but if that's not the case, there's no reason for it.

And for the native binary sure, if someone (that I can trust - public profile, contributions to known repos) wants to make and open a PR with the missing binary I'll merge it. Signed commit would be nice.

Would @smolck count? ;) I'll ping you again when I have my machine set up.

smolck commented 3 years ago

And for the native binary sure, if someone (that I can trust - public profile, contributions to known repos) wants to make and open a PR with the missing binary I'll merge it. Signed commit would be nice.

Would @smolck count? ;) I'll ping you again when I have my machine set up.

If so, I'm happy to do this (including the signed commit, just got that set up). Just give me the go-ahead @romgrk and I'll open a PR (or don't and I won't ;)).

romgrk commented 3 years ago

Lol yes sure I trust @smolck ^^ Go ahead