Opened 9 years ago

Last modified 9 years ago

#46284 new defect

Add support for universal variant to category:pure

Reported by: agraef (Albert Graef) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch maintainer Cc: ryandesign (Ryan Carsten Schmidt)
Port: category:pure

Description

It would be nice if the Pure addon modules (category:pure) had support for the universal variant. The attached pure-1.0.diff adds this capability.

This already works with most existing ports in the pure category if the following line is added to the corresponding Portfiles:

universal_variant yes

I've also attached the patch pure-universal.diff which enables this flag in all ports in category:pure which support (and need) this flag, and also bumps their revision numbers. (The pure-reduce port also needs an additional patch to make this work, which is attached as patch-Makefile-ldflags.diff. This file goes into pure/pure-reduce/files.)

There are still some ports in category:pure which don't support universal binaries right now:

  • pure-octave: This depends on the octave port which doesn't support universal binaries right now, so there won't be any support for that in pure-octave either as long as this is the case.
  • faust2pd, pd-faust, pure-gen: These are basically compiled Pure scripts. As the Pure batch compiler doesn't allow the creation of universal binaries yet (at least not directly), the universal variant isn't supported for these ports yet. (I started working on a solution for this, but it will probably take some time and maybe a new Pure release to make that work.)

NOTE: The remaining ports in category:pure which don't have universal_variant set don't need it, since they contain no binaries. These are: pure-docs, pure-g2, pure-rational.

Attachments (3)

pure-1.0.diff (1.6 KB) - added by agraef (Albert Graef) 9 years ago.
pure-universal.diff (17.5 KB) - added by agraef (Albert Graef) 9 years ago.
Adds universal variant to all ports in category:pure which support it
patch-Makefile-ldflags.diff (598 bytes) - added by agraef (Albert Graef) 9 years ago.
Needed patch for the pure-reduce port

Download all attachments as: .zip

Change History (4)

Changed 9 years ago by agraef (Albert Graef)

Attachment: pure-1.0.diff added

Changed 9 years ago by agraef (Albert Graef)

Attachment: pure-universal.diff added

Adds universal variant to all ports in category:pure which support it

Changed 9 years ago by agraef (Albert Graef)

Attachment: patch-Makefile-ldflags.diff added

Needed patch for the pure-reduce port

comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Thanks. I had been putting this off until someone asked for it, and here you are!

We should instead default to providing a universal variant for pure module ports, as MacPorts does for other ports, and add universal_variant no to those that don't support it.

The portgroup should use e.g. [get_canonical_archflags cc] instead of ${configure.universal_cflags} (and similarly for cxxflags and ldflags) to avoid needing to maintain two copies of the build.args-append directive.

Note: See TracTickets for help on using tickets.