I would look at how CMake itself is packaged for release.

The ‘one executable per App bundle’ is Apple-centric thinking that luckily is 
not enforced.  That isn’t how CMakes (or the OS X Emacs, e.g.) works. You can 
have whatever you want in an app bundle.

It does means that after install, users need to add the directory inside the 
bundle to their PATH environment variable, if the extra programs are meant to 
be command line executables.  You’d want whatever GUI program that is your main 
program to be the executable run when you open the app bundle.

The problem is that what you’re trying to do doesn’t map neatly onto the Apple 
world, so you have to choose the least worst workaround.  For that matter, 
using a compressed tar instead of an App Bundle would work too.

From: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Date: Monday, July 28, 2014 at 8:06 PM
To: CMake Users <[email protected]<mailto:[email protected]>>
Subject: [CMake] Using CPack with OSX 10.9

Hi there,

We’re looking to update our CMake packaging scripts so that we can deploy to 
OSX 10.9 Mavericks. For previous OSX releases, we have used the PackageMaker 
generator with CPack to create .pkg files inside .dmg files. I believe 
PackageMaker has now disappeared (I can’t run the old version on my current 
machine and there doesn’t seem to be a new version available anywhere), so I 
would like to ask you all: what is the preferred generator for deploying to OSX 
10.9?

I’m currently looking into the OSX Bundle generator, however, our application 
ships with multiple executables and a number of dependent libraries and 
frameworks, so I’m not quite sure whether this is the right way to go. From 
what I’ve read, OSX application bundles are supposed to have a single 
executable only – how would I go about deploying an application that has 
multiple component applications? If we use the bundle generator, our 
application is going to look like this (I think), which seems strange:

OurApplication.app/
    Contents/
        Info.plist
        MacOS/
            executable1
        Frameworks/
            QtCore.framework
            QtGui.framework
            …
        Resources/
            bin/
                executable1
                executable2
                …
            lib/
                non-framework dependencies

Thanks for your help,

Lachlan Hetherton
Software Engineer (Visualisation)
☎ +613-9545-8041


________________________________
Notice: This UI Health Care e-mail (including attachments) is covered by the 
Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential and 
may be legally privileged.  If you are not the intended recipient, you are 
hereby notified that any retention, dissemination, distribution, or copying of 
this communication is strictly prohibited.  Please reply to the sender that you 
have received the message in error, then delete it.  Thank you.
________________________________
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake

Reply via email to