New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #16349 (closed enhancement: worksforme)

Opened 5 years ago

Last modified 4 years ago

Request for 64-bit python variants on architectures that support it

Reported by: macsforever2000@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.6.0
Keywords: Cc: mww@…, raimue@…, blb@…, mcalhoun@…, robin@…
Port: python24 python25 python26 python30

Description

Python 2.5 is 32-bit only. Ideally it should build 64-bit on 64-bit PPC and Intel architectures. I suspect the same issue is true for all of the python versions (2.4, 2.5, 2.6 and 3.0).

Attachments

patch-universal_archs.diff (6.5 KB) - added by jewart@… 4 years ago.
Patch to support the universal_archs setting from macports.conf
Portfile-universalarchs.diff (1.4 KB) - added by jewart@… 4 years ago.
Diff against Portfile from SVN HEAD to support universal_archs

Change History

comment:1 follow-up: ↓ 2 Changed 5 years ago by raimue@…

This is basically true for all software build by MacPorts. Xcode defaults to i386 and ppc, if you did not request x86_64 or ppc64.

Will other ports linking against python work if they are built 32-Bit? Will py25-* modules automatically build 64-Bit, too?

comment:2 in reply to: ↑ 1 Changed 5 years ago by jmr@…

Replying to raimue@macports.org:

Will other ports linking against python work if they are built 32-Bit?

I'm pretty sure they won't. You're right that this is really a base issue. OTOH it would be nice to get Python building 4-way universal. Last time I tried with universal_archs="i386 x86_64" it failed.

comment:3 Changed 5 years ago by macsforever2000@…

  • Cc blb@… added
  • Keywords python24 python25 python26-devel python30 removed
  • Port set to python24 python25 python26 python30
  • Summary changed from Python should be 64-bit on architectures that support it to Request for 64-bit python variants on architectures that support it

Ccing maintainer of python26.

I should say that variants should be created for the python ports that build 64-bit. Then we can perhaps create 64-bit variants for the python modules like numpy, scipy, etc.

comment:4 Changed 4 years ago by mcalhoun@…

  • Cc mcalhoun@… added

Cc Me!

comment:5 Changed 4 years ago by mcalhoun@…

Partial fix for python26 is available as of r45081.

comment:6 Changed 4 years ago by mcalhoun@…

Partial fix for python30 is available as of r46197.

comment:7 Changed 4 years ago by mcalhoun@…

64-bit python support is now in python26 and python30.
A brief inspection of python25 indicates that the same changes would be more difficult to apply.
Can this ticked therefore be closed?

comment:8 Changed 4 years ago by macsforever2000@…

I currently use python 2.5 in production and will for the foreseeable future. If you can do this for python25 it would be greatly appreciated. It's going to take a long time before most code switches over to 2.6+.

comment:9 Changed 4 years ago by anonymous

  • Milestone Port Enhancements deleted

Milestone Port Enhancements deleted

Changed 4 years ago by jewart@…

Patch to support the universal_archs setting from macports.conf

Changed 4 years ago by jewart@…

Diff against Portfile from SVN HEAD to support universal_archs

comment:10 Changed 4 years ago by jewart@…

Added two patch files for Python 2.5 to support the universal_archs setting in macports.conf. I had a bit of a row with this because the python port doesn't use autoconf, so I had to fix configure.in / Makefile.pre.in, and run autoconf, then diff the pre-existing configure script against the output from autoconf, as well as add support for the setting in the Makefile.pre.in. I'll try to add these changes to python26 and python30 when I have time.

To make this work, you need to build macports from source using the x86_64 architecture and then add "universal_archs x86_64" to your macports.conf and add +universal to your variants.conf to make sure all your builds pick up the x86_64 settings.

comment:11 Changed 4 years ago by jewart@…

I apologize, I missed the bit above about python26 and python30 having these changes, ignore the bit about me fixing them.

comment:12 Changed 4 years ago by robin@…

  • Cc robin@… added

Cc Me!

comment:13 Changed 4 years ago by macsforever2000@…

  • Status changed from new to closed
  • Resolution set to worksforme

In light of Snow Leopard and the python ports working fine with it, I think this ticket can be closed now.

Note: See TracTickets for help on using tickets.