-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
libuv-devel: update to 1.50.0 #27671
base: master
Are you sure you want to change the base?
Conversation
Notifying maintainers: |
@casr To a little surprise, |
@casr So there are two more issues now which need to be fixed:
Without a fix for these, there are two failures: 1) undefined Here is a patch draft which fixes the build (basically reverting the first breakage and disabling unsupported stuff). Notice, I do not know exact macOS version threshold for these. It is safe to say the patch is required at least on 10.6, but probably some laters OSs too. |
@macportsraf @fhgwright If you got time (and interest), please have a look, maybe you could fix these two issues properly. |
Prefer a regex replace over patch as Makefile.in is dynamically generated so this can ease maintenance burden.
Excellent sleuthing and thank you for the patches. I'll add them in now.
What are your thoughts on these points? |
Include patches provided by @barracuda156 See: macports#27671 (comment)
patchfiles-append patch-no-libutil-on-Tiger.diff | ||
post-patch { | ||
# Tiger has no libutil | ||
reinplace -E "s|(.*DARWIN_TRUE.*-lutil.*)|# \\1|" Makefile.in |
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.
@barracuda156 Do you know if this is sufficient as compared with the patch? The patch originally commented out DragonFlyBSD's, FreeBSD's, etc as well which seemed unnecessary for Tiger to work.
If it is necessary then the regex could instead be:
reinplace -E "s|(.*DARWIN_TRUE.*-lutil.*)|# \\1|" Makefile.in | |
reinplace -E "s|(.*-lutil.*)|# \\1|" Makefile.in |
which would yield a similar result to the patch.
(Extra context: I changed this to be a reinplace
instead because this file is dynamically created by automake so will more likely apply in the future)
Convert patch set to be compatible with `git am`. Set produced with `git format-patch`
0320657
to
b28f0fc
Compare
@casr Perhaps this is up to this port’s maintainers to decide. Abstractly, it is always better to use unconditionally applied patches with appropriate conditions in the code itself (partly because in practice too often conditional patches are not rebased and then fail to apply). However if maintainers have no interest in dealing with patches, it is comparatively better to have patches which may fail to apply until someone bothers to fix that, rather than support for older systems being removed and patches going out of the window. |
That code had issues even before the change:
It would be even simpler than their "simplified" version to just use
I don't know what the difference is between
Patchfiles are always a terrible way to maintain non-trivial changes, from both readability and maintainability perspectives. What I normally do in such cases is to create a branch in my fork of the upstream code (in some cases more than one branch), and make all changes as git commits in the fork. Then, |
@fhgwright Could you help us with the fix for the time issue here? Would be nice to have it working correctly, including powerpc, since a number of ports rely on libuv. |
As I previously suggested:
Although they're technically correct about And in general, they tend to use |
Add in Fred Wright's patch
Restrict recvmsg_x/sendmsg_x to 10.10+
Thank you for the patch. I've replaced the reverted version with this new one. 6ae2d1e
Given this, I've adjust the patch relating to this code to need at least 10.10. 584f34b |
Description
update libuv-devel to 1.50.0
This is a follow up to #27670 but restricted to only libuv-devel upon the suggestion of @barracuda156 (#27670 (comment))
Type(s)
Tested on
macOS 14.7.1 23H222 arm64
Xcode 15.4 15F31d
Verification
Have you
port lint
?sudo port test
?sudo port -vst install
?