Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Precompiled hermes binaries? #17

Closed
mathiasbynens opened this issue Jul 11, 2019 · 6 comments
Closed

Precompiled hermes binaries? #17

mathiasbynens opened this issue Jul 11, 2019 · 6 comments
Labels
question Further information is requested

Comments

@mathiasbynens
Copy link

Hey y'all,

Congrats on open-sourcing Hermes!

Are you planning on providing precompiled hermes binaries for various platforms? If you are, we'd be happy to add hermes support to jsvu. This would make it easier for folks to casually play around with a recent hermes binary without having to clone + sync + build from source every time.

If not, that's cool too. Figured I'd ask :)

Cheers,
Mathias

@willholen
Copy link
Contributor

We already provide binaries for macOS, Linux and Windows (all x86_64) through GitHub releases and NPM.

Is that what you're looking for, or do you have other platforms in mind?

@mathiasbynens
Copy link
Author

mathiasbynens commented Jul 12, 2019

That's helpful, thanks!

GoogleChromeLabs/jsvu#74 adds hermes support to jsvu, based on the following assumptions:

  • Amongst the jsvu-supported platforms (i.e. mac64, linux32, linux64, win32, win64), hermes only provides only mac64, linux64, and win64 builds.
  • The ['dist-tags'].latest field in https://registry.npmjs.org/hermes-engine always points to the latest available Hermes version number.
  • The URL format for the GitHub download links won't change over time.
  • The dir/file structure of the provided tarball contents won't change over time.

If any of these assumptions seem likely to change in the future, please let us know so we can come up with an alternate approach.

@mathiasbynens
Copy link
Author

Along the way, I noticed that the npm tarballs (e.g. https://registry.npmjs.org/hermesvm/-/hermesvm-0.1.0.tgz) do not contain the DLLs for the Windows version. The GitHub tarballs do. Let me know if you'd like me to file this as a separate issue.

@Urcra
Copy link

Urcra commented Jul 12, 2019

Hey just noticed that the tools from https://github.com/facebook/hermes/blob/master/doc/BuildingAndRunning.md#other-tools are not included in the prebuilt binaries. Would be awesome if you could add them to a release 😄

@willholen
Copy link
Contributor

@mathiasbynens Thanks for noticing! This issue is fine.

@dulinriley dulinriley added the question Further information is requested label Jul 17, 2019
@willholen
Copy link
Contributor

The NPM ICU dll issue was fixed in 02ec02a, though it still depends on the MSVC++2015 Redistributable though. All future NPM releases should include them, as well as the precompiled binaries.

facebook-github-bot pushed a commit that referenced this issue Oct 28, 2019
Summary:
Treat `static_ref_cast<JFoo>` as equivalent to `static_ref_cast<JniType<JFoo>>`,
which is equivalent to `static_ref_cast<JFoo::javaobject>`.

As a side-effect, this also allows `JMap<JFoo, JFoo>`, since the only
thing blocking that before was a cast.

Pull Request resolved: facebookincubator/fbjni#17

Test Plan: CI

Reviewed By: cjhopman

Differential Revision: D18121225

Pulled By: dreiss

fbshipit-source-id: 81d0d56967dcb8d907d3a3cec4a52e110743853c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants