Skip to content

python313: fix build on Tiger and Leopard #28265

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

glebm
Copy link
Contributor

@glebm glebm commented Apr 26, 2025

Description

This adds the 2 patches from @kencu, originally posted in https://trac.macports.org/ticket/71206#comment:13, to fix the build on Tiger.

To fix the build on Leopard, we simply add -D_DARWIN_USE_64_BIT_INODE.

Tiger does not have 64-bit inode support. Disabling the assert completely is not ideal but for now is better than not being able to build it at all. Looking at the code, the relevant function (vstatfs) should still work regardless.

/cc @barracuda156

Type(s)
  • bugfix
  • enhancement
  • security fix
Tested on

macOS x.y
Xcode x.y / Command Line Tools x.y.z

Verification

Have you

  • followed our Commit Message Guidelines?
  • squashed and minimized your commits?
  • checked that there aren't other open pull requests for the same change?
  • referenced existing tickets on Trac with full URL in commit message?
  • checked your Portfile with port lint?
  • tried existing tests with sudo port test?
  • tried a full install with sudo port -vst install?
  • tested basic functionality of all binary files?
  • checked that the Portfile's most important variants haven't been broken?

This adds the 2 patches from kencu@, originally posted in
https://trac.macports.org/ticket/71206#comment:13, to fix
the build on Tiger.

To fix the build on Leopard, we simply add
`-D_DARWIN_USE_64_BIT_INODE`.

Tiger does not have 64-bit inode support. Disabling the
assert completely is not ideal but for now is better
than not being able to build it at all.
@macportsbot
Copy link

Notifying maintainers:
@jmroot for port python313.

@glebm glebm marked this pull request as draft April 26, 2025 05:54
@glebm glebm marked this pull request as ready for review April 26, 2025 06:27
@barracuda156
Copy link
Contributor

@glebm As far as I can tell, neither -D_DARWIN_USE_64_BIT_INODE nor my earlier patch to address the same issue are needed on either 10.6.8 ppc or 10.5.8 ppc64. I have just verified building 3.13.3 on both systems without either.

I cannot check on 10.5.8 ppc, but given that 10a190 needed a patch, it is likely that 32-bit 10.5.8 needs it as well.
If this is correct, then the condition should include < 10 and only 32-bit.

@glebm
Copy link
Contributor Author

glebm commented Apr 26, 2025

@barracuda156 -D_DARWIN_USE_64_BIT_INODE has been reported to fix the build on 32-bit 10.5 here: https://trac.macports.org/ticket/71206#comment:25.

According to this table https://trac.macports.org/ticket/71206#comment:12, it's a no-op on 10.6 and 64-bit 10.5 (defined by default), so I think there is no harm in including it? I can tighten up the condition if we really want to but opted to keep the Portfile simple for now.

@barracuda156
Copy link
Contributor

@glebm I did not investigate effects of adding that flag. If it does nothing where unneeded, then no harm using it indeed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

4 participants