Opened 8 years ago
Closed 6 years ago
#52043 closed defect (fixed)
python27 @2.7.12_1 fails to build +universal on Sierra; prevents installation of wine
Reported by: | kode54 (Christopher Snowhill) | Owned by: | larryv (Lawrence Velázquez) |
---|---|---|---|
Priority: | High | Milestone: | |
Component: | ports | Version: | 2.3.4 |
Keywords: | sierra haspatch | Cc: | mkae (Marko Käning), jeremyhu (Jeremy Huddleston Sequoia), ned-deily (Ned Deily), jyrkiwahlstedt, MaddTheSane (C.W. Betts), roberthuston@…, elventear (Pepe Barbe), ryandesign (Ryan Carsten Schmidt), mayocoko@… |
Port: | python27, wine, wine-devel, wine-crossover |
Description
I am attempting to install wine, and this package fails to build due to the Mac glue attempting to import Quicktime headers, which no longer exist.
Attachments (1)
Change History (28)
Changed 8 years ago by kode54 (Christopher Snowhill)
comment:1 Changed 8 years ago by larryv (Lawrence Velázquez)
Owner: | changed from macports-tickets@… to jwa@… |
---|---|
Summary: | Python27 @2.7.12_1 fails to build +universal on Sierra → python27 @2.7.12_1 fails to build +universal on Sierra |
In future port-related tickets, please Cc the maintainers (e.g., port info --maintainers python27
), if any.
comment:5 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | jeremyhu@… added |
---|---|
Keywords: | haspatch added |
Port: | wine wine-devel wine-crossover added |
Priority: | Normal → High |
Summary: | python27 @2.7.12_1 fails to build +universal on Sierra → python27 @2.7.12_1 fails to build +universal on Sierra; prevents installation of wine |
There is a patch attached to the upstream issue but I don't know if that's the best solution. Jeremy, what do you think?
comment:6 follow-up: 8 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
AvailabilityMacros.h is super deprecated and should not be used by anything current. Availability.h was added as replacement in 10.5.
__MAC_OS_X_VERSION_MAX_ALLOWED
should be checked instead of defined (DEPRECATED_IN_MAC_OS_X_VERSION_10_12_AND_LATER)
They should really have a central config and use that instead. Eg:
#include <Availability.h> #define APPLE_SUPPORTS_QUICKTIME (__MAC_OS_X_VERSION_MAX_ALLOWED < 101200) || !__LP64__
comment:7 Changed 8 years ago by larryv (Lawrence Velázquez)
Cc: | nad@… added |
---|
comment:8 follow-up: 11 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to jeremyhu@…:
AvailabilityMacros.h is super deprecated and should not be used by anything current. Availability.h was added as replacement in 10.5.
It would be nice to still be able to build on 10.4...
comment:9 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Ok, then:
#if __has_include(<Availability.h>) #include <Availability.h> #define APPLE_SUPPORTS_QUICKTIME (__MAC_OS_X_VERSION_MAX_ALLOWED < 101200) && !__LP64__ #else #define APPLE_SUPPORTS_QUICKTIME !__LP64__ #endif
comment:10 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Please use the v2 version of the upstream patch which incorporates my feedback:
comment:11 Changed 8 years ago by ned-deily (Ned Deily)
Replying to ryandesign@…:
It would be nice to still be able to build on 10.4...
There is another, unrelated issue with building Python 3.6 on 10.4. As of 3.6.0b1, certain features of the C99 standard are used in C modules; as a result, 3.6 no longer compiles with gcc-4.0, the standard in Xcode 2.5 for 10.4. So you'll probably need to add a dependency on a MacPorts-supplied C compiler (gcc-4.2 is fine).
comment:12 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)
We changed the default compiler on Tiger to Apple GCC 4.2 (provided by MacPorts) years ago. If there is another issue with Tiger please file a new ticket.
comment:13 Changed 8 years ago by ned-deily (Ned Deily)
Oh, good. I haven't actually yet tried to install the python36 port on 10.4. One more thing, the v2 patch referred to by Jeremy above needed to be tweaked for gcc-4.2 et al. The final version has been committed here: https://hg.python.org/cpython/rev/4030300fcb18
comment:14 Changed 8 years ago by larryv (Lawrence Velázquez)
Cc: | jwa@… added |
---|---|
Owner: | changed from jwa@… to larryv@… |
Status: | new → assigned |
r152947, maintainer timeout. I applied the upstream patch but don’t have Sierra available to test; can someone verify that +universal works on Sierra now?
comment:15 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)
Doing a trial build now: https://build.macports.org/builders/ports-10.12_x86_64-builder/builds/5460
comment:17 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)
That works. Can we apply the same patch to all the other python2x ports, please? (I tested python31 and python36 and they didn't have this problem.)
comment:23 follow-up: 24 Changed 8 years ago by mf2k (Frank Schima)
This works for me now. Can we close this ticket?
$ port -v installed python27 The following ports are currently installed: python27 @2.7.12_1+universal (active) platform='darwin 16' archs='i386 x86_64' date='2016-09-21T20:57:53-0600'
comment:24 Changed 8 years ago by larryv (Lawrence Velázquez)
I would like to keep this open to remind myself to fix the other Python 2 ports also, once I actually upgrade my machine to Sierra.
comment:26 Changed 7 years ago by pmetzger (Perry E. Metzger)
larryv:
"I would like to keep this open to remind myself to fix the other Python 2 ports also, once I actually upgrade my machine to Sierra."
Can we close this instead and have you open a fresh ticket to remind yourself of the other fixes? This is actually done, and having a high priority open at the top of the "haspatch" list that should really just be a fresh ticket makes it harder to find what actually needs fixing. If I don't hear objections, I'll be closing this in a day or two.
comment:27 Changed 6 years ago by mf2k (Frank Schima)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Agreed, the High priority fix was committed long ago.
Clean python27 build log