-
Notifications
You must be signed in to change notification settings - Fork 333
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
Add tests for 32-bit systems. #722
Comments
Would have caught #724 probably |
This is actually causing build failures on Debian's 32-bit architectures. For example, here's a failing build log for i386. I'd love to have the latest version of the libsqlite3-sys in debian, but to do that i'm probably going to need to patch out these tests if the platform is 32-bit, which is a bit disappointing. |
Yeah, the bindgen tests in Either way, I don't think the tests bindgen emits help much. They basically just test that |
The auto-generated bindgen layout tests are architecture dependent and cause breakage on 32-bit platforms at least. Note that this does not yet remove the layout tests from bindgen-bindings/bindgen_*.rs -- i'm not sure how those are generated. Addresses: rusqlite#722
@thomcc wrote:
#1213 is a patch to remove them from the bundled bindings. let me know if you'd rather it looks different somehow. thanks for maintaining rusqlite! |
The auto-generated bindgen layout tests are architecture dependent and cause breakage on 32-bit platforms at least. Note that this does not yet remove the layout tests from bindgen-bindings/bindgen_*.rs -- i'm not sure how those are generated. Addresses: #722
Thanks. |
Note that this was done manually by cutting out all #[test] functions named *_test_layout_*, rather than the automated re-generation step that produced 53b1b59. Closes: rusqlite#722
#1214 includes removal of the tests from the different stored versions as well. I notice that those versions don't do things like strip out |
Those versions should be removed honestly. There are a lot of things I need to do to the build.rs when I find time, but haven't found it sadly. |
i know the feeling! I'm just reporting what i see and trying to be helpful, not trying to nag you :) FWIW, at least one of these bundled versions is still in use during standard compilation when not using bundled libsqlite3. i'm also looking at the code change that resulted from my regeneration of the bundled bindings in #1213, and noticing that it is significantly more transformative than the manual cut jobs in #1214. I hope i didn't screw that up, but i'd certainly appreciate any sort of more detailed review -- if you've got feedback you want me to consider, i'd be happy to consider it. |
Give me a week or so and I can find time for a more detailed review. Looking again, that seems to have cut out more than it should have. |
i've opened #1215 to try to repair the excessive cutting. sorry about that! |
One impediment here is that the bundled bindings include tests that only work on 64-bit systems (because they include hard-coded constants).
Probably worth removing those tests when generating the bundled bindings and including them for non-bundled cases (e.g. buildtime_bindgen).
The text was updated successfully, but these errors were encountered: