general advice about making a portfile and a binary package?

Allen McBride allencmcbride at gmail.com
Sat Mar 14 09:06:39 PDT 2009


On Mar 14, 2009, at 12:03 AM, Rainer Müller wrote:

> Nice to hear that. Now to make that available to the wide public, I
> would encourage you to submit it via Trac so we can include it in the
> official ports tree.
>
> See
> http://guide.macports.org/#project.tickets
> http://guide.macports.org/#project.contributing

Great, I would love to do this.  I just have a few questions to get my  
Portfile written correctly, even though it already works for me:

1) Among the dependencies the author lists for Solfege are MIDI, GCC,  
and GNU Make.  Any Mac has MIDI, and anyone who has installed MacPorts  
will have the other two, right?  Do I need to include them as non-port  
dependencies, or can I ignore them?

2) X11 isn't listed as a dependency, but building Solfege for Aqua  
sounds like a whole other project.  But again, any MacPorts user  
should have X11.  Do I need to list X11 as a dependency?  If so, how?   
"depends_lib  lib:libX11:xorg-libX11"?

3) Certain versions of dependencies are required (but not cutting-edge  
or anything).  I don't see anything in the MacPorts Guide about  
specifying dependency versions.  Am I supposed to do this?

4) Python is a run dependency, and the python header files are a build  
dependency.  From http://trac.macports.org/ticket/18055, it looks like  
there is no port of just the headers.  Can I just list python as a run  
dependency and assume the headers will therefore be there for the build?

> No, you would have to install MacPorts to a different prefix and  
> create
> the package from there. Download the MacPorts source and use
> './configure --prefix=/opt/whatever' followed by the usual make &&  
> make
> install. Then create the dmg from this port installation (use
> /opt/whatever/bin/port). You would also have to create binary packages
> of all dependencies being used.

Thanks, this is helpful too.  I'll first get my Portfile in order and  
then see about making binaries I can distribute.  In searching the web  
and the list archives, I see references to a "port mdmg" command that  
can create just one file with all dependencies.  But there's nothing  
in the MacPorts Guide about it.  Where can I find more information  
about port mdmg?

--Allen



More information about the macports-users mailing list