-
-
Notifications
You must be signed in to change notification settings - Fork 14.7k
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
python3: proper syntax for Windows patches #351010
python3: proper syntax for Windows patches #351010
Conversation
Windows patches were being added with a shell glob, which was dying with an error. See NixOS#351007. Use filesystem methods to walk the patch set and retrieve the patch names. Also, update the patches from the Fedora project to the latest for Python 3.11.9 and add filtering for any that are already applied to the 3.11.10 in the current cycle. python312 still fails to cross-compile after this patch, but at least 3.11 will again be available
872f63f
to
708a493
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only looked at the code, didn't try to build.
LGTM except for the comment with the version number?
It seems the patches are outdated (building
|
Correct. The patches Nix uses are pulled from Fedora. Fedora has not updated to 3.12 yet. Most of the bad patches are because of dropping distutils in 3.12. However, that shouldn't stop us from at least enabling 3.11 to cross compile with this change set. If you specifically build |
That one fails due to pthreads not compiling:
|
Hmm, then that's a change since I made this branch and needs to be addressed in a different PR. I can look into that later. But I've just rebuilt it again here, locally, directly out of my branch. Are you testing a merge of this PR into master? |
I merged into staging. But if the patches are correct for you (you tested with latest 3.11, right?), then this PR can be merged. |
It was 3.11.10 at the time, which was latest. It looks like 3.11.11 is out. A quick scan through the Fedora patchset looks like it hasn't changed at all in that update, only in the auto-generated comments listing the version numbers in the file pathnames that their tooling used to generate the patches. That won't affect application of the patch, plus when I just tried rebasing to master (saw the same winpthread failure you did), it it still building 3.11.10 so it looks like 3.11.11 hasn't made it into nixpkgs yet. |
@FliegendeWurst I opened a new issue to track the winpthreads failure and put my initial work into there. I have been able to work around the build failure, but it required me to change which C library all of the MinGW stack was building against. So that seems a tad drastic. |
Windows patches were being added with a shell glob, which was dying with
an error. See #351007. Use filesystem methods to walk the patch set and
retrieve the patch names.
Also, update the patches from the Fedora project to the latest for
Python 3.11.9 and add filtering for any that are already applied to the
3.11.10 in the current cycle.
python312 still fails to cross-compile after this patch, but at least
3.11 will again be available
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.