[cairo] Universal Framework for Mac OS X

Ryan Schmidt cairo-2009a at ryandesign.com
Mon Mar 23 15:17:56 PDT 2009

On Mar 23, 2009, at 11:00, Neil Mayhew wrote:

> I had assumed you were talking about a system-wide framework, eg in
> /Library/Frameworks, which I don't think offers a great deal over a
> MacPorts library. However, maybe there are aspects to this that I
> haven't understood.
> I know it's something that Apple recommends, but with libraries  
> that are
> likely to be used by other applications it seems to me like such a  
> waste
> for each app to have its own private copy.
> On 22/03/09 05:33 PM Ryan Schmidt wrote:
>> ... on Mac OS X you really want to distribute something that is
>> relocatable...
> I'm not sure I understand why this is particularly important,  
> unless you
> want to put the framework inside your app.

It would be important if you want to put anything compiled  
(libraries, frameworks, executables) into your application bundle, or  
into a user's Library folder. It would not matter if you require that  
everything is installed in the system-wide /Library folder. However  
some users are not admins of the machines they're using and will not  
have permission to modify /Library, and the Mac OS X convention is  
that a library can go in any Library folder, and it only affects who  
gets to use it. So you should not break that assumption by  
distributing non-relocatable frameworks.

>> And you don't really want to distribute things that install into
>> /opt/local, because that would overwrite and interfere with anything
>> the user had themselves installed with MacPorts.
> One solution would be to check in the installer whether /opt/local is
> already there and put up a message to the user telling them which  
> ports
> they need to install to support the app, and not install the ones from
> the installer. Or the installer could offer to run MacPorts to install
> what's needed. This would be unusual behaviour for an installer, but I
> would think that very few end-users actually use MacPorts, and those
> that do would presumably be comfortable with it.

Even if the user does not today have MacPorts installed in /opt/ 
local, they might want to tomorrow. Please do not install anything  
in /opt/local without using MacPorts to do so. MacPorts assumes it is  
in complete control of its prefix.

More information about the cairo mailing list