Opened 16 years ago

Closed 14 years ago

#16349 closed enhancement (worksforme)

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

Reported by: mf2k (Frank Schima) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.6.0
Keywords: Cc: mww@…, raimue (Rainer Müller), blb@…, MarcusCalhoun-Lopez (Marcus Calhoun-Lopez), 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 (2)

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

Download all attachments as: .zip

Change History (15)

comment:1 Changed 16 years ago by raimue (Rainer Müller)

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 16 years ago by jmroot (Joshua Root)

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 15 years ago by mf2k (Frank Schima)

Cc: blb@… added
Keywords: python24 python25 python26-devel python30 removed
Port: python24 python25 python26 python30 added
Summary: Python should be 64-bit on architectures that support itRequest 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 15 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Cc: mcalhoun@… added

Cc Me!

comment:5 Changed 15 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Partial fix for python26 is available as of r45081.

comment:6 Changed 15 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Partial fix for python30 is available as of r46197.

comment:7 Changed 15 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

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 15 years ago by mf2k (Frank Schima)

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 15 years ago by (none)

Milestone: Port Enhancements

Milestone Port Enhancements deleted

Changed 15 years ago by jewart@…

Attachment: patch-universal_archs.diff added

Patch to support the universal_archs setting from macports.conf

Changed 15 years ago by jewart@…

Diff against Portfile from SVN HEAD to support universal_archs

comment:10 Changed 15 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 15 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 15 years ago by robin@…

Cc: robin@… added

Cc Me!

comment:13 Changed 14 years ago by mf2k (Frank Schima)

Resolution: worksforme
Status: newclosed

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.