-
Notifications
You must be signed in to change notification settings - Fork 782
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
Move links key from pyo3 to pyo3-ffi #2224
Conversation
…ipt has finished before pyo3's build script starts.
5a218c3
to
0c7a13f
Compare
I don't think this will necessarily help? The problem is that this PR will cause Even if the build script runs for the host build, it won't get the right information from cargo to detect cross compiles. |
I it is indeed built twice but the (useless) version for the host does not write the cross-comilation-specific file, does it? In any case, I think this appears to fix things because it seems to ensure that both build script builds of Log of building `pyo3-ffi` and `pyo3` with this change
|
So the CI failure show that this is a bad idea in any case as the host build of |
Instead of a fake build dependency, move the links key from pyo3 to pyo3-ffi which according to [1] is a prerequisite for build scripts to emit meta-data that can be used by other build scripts which would incidentally ensure the ordering between the build script of pyo3 and pyo3-ffi that we need. [1] https://doc.rust-lang.org/cargo/reference/build-script-examples.html#using-another-sys-crate
415f8c0
to
1e7275c
Compare
Another try: Instead of a fake build dependency, move the (I think the |
That sounds likely to be a correct fix to me! |
This comment was marked as resolved.
This comment was marked as resolved.
311123b
to
1e7275c
Compare
This ensures that its build script has finished before pyo3's build script starts. The extra dependency edge enables reliably passing configuration files like
pyo3-cross-compile-config.txt
created bypyo3-ffi
's build script to the one ofpyo3
.Closes #2222