replaced_by multiple ports?

Leo Singer aronnax at
Tue Dec 11 13:31:16 PST 2012

On Dec 11, 2012, at 1:21 PM, Ryan Schmidt <ryandesign at> wrote:

> On Dec 11, 2012, at 14:59, Jeremy Lavergne wrote:
>>> I would like to split an existing port (healpix) into two or more new ports (healpix-c, healpix-cxx). Is there a way to accomplish this with replaced_by, or are there any examples of ports for which something similar has happened in the past?
>> I believe replaced-by only handles a one-to-one replacement.
> Right.
>> I'd recommend making healpix a virtual package (no real contents, just one file in to place into a ${prefix}/share/doc/${name}/) that depends on both healpix-c and healpix-cxx. 
> Yes, but you'll have to add the "deactivate hack" to the virtual port (or meta port) to prevent activation failures on upgrades.
>> You could add a `notes` message indicating healpix no longer does anything: users can set healpix-c[xx] as requested and then uninstall healpix.
> Yes, and any ports that depend on healpix should be updated to depend on the new port(s) as appropriate.

Could I have healpix depend on healpix-c and healpix-cxx?

The healpix-* ports would share distfiles and some build arguments. What I have in my working copy right now is a modified version of the healpix Portfile (see attached) that contains healpix-c and healpix-cxx subports, a little reminiscent of the Python ports. Is this setup reasonable? What is the simplest way to make the main port a virtual port?


-------------- next part --------------
A non-text attachment was scrubbed...
Name: Portfile
Type: application/octet-stream
Size: 2536 bytes
Desc: not available
URL: <>

More information about the macports-dev mailing list