-
Notifications
You must be signed in to change notification settings - Fork 682
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
Should be able to generate spidermonkey bindings without downstream patches #16
Comments
Actually we have a flag to ignore unknown types, I don't think that's the problem. The problem is most likely that we generate bad bindings for some kind of C++. We have an extensive set of flags to ignore types, mark them as opaque, etc. That's probably enough, except in the case we generate a bad type that is absolutely necessary to rust-mozjs. Nick, do you know what are the blockers here? I'm happy to help :) |
Once the current smup lands, I'll try to see if we can replace some of those ifdefs by bindgen flags. |
Does bindgen support keeping those flags in some kind of configuration file? Something we can keep in |
Thanks! :-D Not yet, I have a couple things to get done first (grrr NSPR) but I was going to start just running bindgen on m-c's js/ and filing bugs / submitting PRs for things that fail without downstream patches. Wash, rinse, repeat until everything Just Works :) |
Sounds good to me :-) For comparison, now what we have in stylo, for example, is a python script that takes care of invoking bindgen appropriately, and it works fairly well. |
This is fixed, isn't it? |
Right now, servo/mozjs has a bunch of downstream patches that simplify and dumb down spidermonkey headers and even completely hide various types.
We should get to the point where we don't need these downstream patches, and can run bindgen in CI for mozilla-central. That doesn't necessarily mean that we have to generate bindings for all of C++, but maybe have some configuration of things to ignore rather than manually ifdef away chunks of code.
Blocks https://bugzilla.mozilla.org/show_bug.cgi?id=1277343
The text was updated successfully, but these errors were encountered: