Skip to content
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

gh-104106: Add gcc fallback of mkfifoat/mknodat for macOS #104129

Merged
merged 2 commits into from
May 5, 2023

Conversation

corona10
Copy link
Member

@corona10 corona10 commented May 3, 2023

@biergaizi
Copy link

This patch contains a typo. #ifdef HAVE_MKNODAT_RUNTIME should be #ifdef HAVE_MKNODAT

@corona10
Copy link
Member Author

corona10 commented May 4, 2023

@biergaizi

This patch contains a typo. #ifdef HAVE_MKNODAT_RUNTIME should be #ifdef HAVE_MKNODAT

Fix done :)

@corona10 corona10 marked this pull request as ready for review May 4, 2023 01:56
@corona10 corona10 added the needs backport to 3.11 only security fixes label May 4, 2023
@corona10 corona10 requested review from ned-deily and a team May 4, 2023 01:57
Copy link
Member

@ned-deily ned-deily left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks for the PR, @corona10, and my apologies for missing this case in the original PRs for #97897.

biergaizi added a commit to biergaizi/prefix that referenced this pull request May 5, 2023
Currently, dev-lang/python-3.11.3 is unbuildable on macOS due to GCC
incompatibility. There exists two "#ifdef" checks for the system calls
mkfifoat() and mknodat(), which are not compatible with GCC. Because
they're defined using the __builtin_available() function - specific to
clang without a fallback for GCC, they're never defined, thus creating
the following errors:

    ./Modules/posixmodule.c:15647:23: error: 'HAVE_MKFIFOAT_RUNTIME'
    undeclared (first use in this function); did you mean
    'HAVE_MKDIRAT_RUNTIME'?
    ./Modules/posixmodule.c:15651:22: error: 'HAVE_MKNODAT_RUNTIME'
    undeclared (first use in this function); did you mean
    'HAVE_MKDIRAT_RUNTIME'?

This bug [1] has already been reported to upstream with a patch [2]
waiting to be merged. This commit applies the upstream patch to add
the missing GCC fallbacks.

[1] python/cpython#104106
[2] python/cpython#104129

Closes: https://bugs.gentoo.org/905618
Signed-off-by: Yifeng Li <[email protected]>
@corona10 corona10 merged commit e5b8b19 into python:main May 5, 2023
@miss-islington
Copy link
Contributor

Thanks @corona10 for the PR 🌮🎉.. I'm working now to backport this PR to: 3.11.
🐍🍒⛏🤖

@miss-islington
Copy link
Contributor

Sorry, @corona10, I could not cleanly backport this to 3.11 due to a conflict.
Please backport using cherry_picker on command line.
cherry_picker e5b8b19d99861c73ab76ee0175a685acf6082d7e 3.11

corona10 added a commit to corona10/cpython that referenced this pull request May 5, 2023
corona10 added a commit to corona10/cpython that referenced this pull request May 5, 2023
@bedevere-bot
Copy link

GH-104187 is a backport of this pull request to the 3.11 branch.

@bedevere-bot bedevere-bot removed the needs backport to 3.11 only security fixes label May 5, 2023
corona10 added a commit that referenced this pull request May 5, 2023
carljm added a commit to carljm/cpython that referenced this pull request May 5, 2023
* main: (61 commits)
  pythongh-64595: Argument Clinic: Touch source file if any output file changed (python#104152)
  pythongh-64631: Test exception messages in cloned Argument Clinic funcs (python#104167)
  pythongh-68395: Avoid naming conflicts by mangling variable names in Argument Clinic (python#104065)
  pythongh-64658: Expand Argument Clinic return converter docs (python#104175)
  pythonGH-103092: port `_asyncio` freelist to module state (python#104196)
  pythongh-104051: fix crash in test_xxtestfuzz with -We (python#104052)
  pythongh-104190: fix ubsan crash (python#104191)
  pythongh-104106: Add gcc fallback of mkfifoat/mknodat for macOS (pythongh-104129)
  pythonGH-104142: Fix _Py_RefcntAdd to respect immortality (pythonGH-104143)
  pythongh-104112: link from cached_property docs to method-caching FAQ (python#104113)
  pythongh-68968: Correcting message display issue with assertEqual (python#103937)
  pythonGH-103899: Provide a hint when accidentally calling a module (pythonGH-103900)
  pythongh-103963: fix 'make regen-opcode' in out-of-tree builds (python#104177)
  pythongh-102500: Add PEP 688 and 698 to the 3.12 release highlights (python#104174)
  pythonGH-81079: Add case_sensitive argument to `pathlib.Path.glob()` (pythonGH-102710)
  pythongh-91896: Deprecate collections.abc.ByteString (python#102096)
  pythongh-99593: Add tests for Unicode C API (part 2) (python#99868)
  pythongh-102500: Document PEP 688 (python#102571)
  pythongh-102500: Implement PEP 688 (python#102521)
  pythongh-96534: socketmodule: support FreeBSD divert(4) socket (python#96536)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants