On Tuesday 20 April 2010 12:59:42 pm Timothy Shead wrote: > On 4/20/10 12:53 PM, Clinton Stimpson wrote: > > On Tuesday 20 April 2010 11:44:27 am Timothy Shead wrote: > >> On 4/20/10 10:11 AM, Ben Medina wrote: > >>> What's throwing me off is the wiki says this about the Bundle > >>> generator: "Rationale: de-facto standard mechanism for distributing > >>> bundles." Unless that's only specifically referencing the previous > >>> sentence about distributing a compressed disk image. > >> > >> Which it is ... not sure what the confusion is? > >> > >>> Is there any documentation about why one would choose the Bundle > >>> generator over DragNDrop? > >> > >> Sometimes you need more control over the contents of a bundle than > >> DragNDrop provides. > >> For example, you might have a single bundle > >> containing a "main", graphical UI application plus secondary helper > >> applications that run in the background. BundleGenerator gives you > >> flexibility to create such a bundle, whereas DragNDrop would create a > >> dmg with several bundles, one-per-app. Of course, the cost is greater > >> complexity. > >> > >> Cheers, > >> Tim > > > > My experience is the other way around. DragNDrop gives me more control, > > because Bundle is a specialization of DragNDrop with some additional > > automatics built in. Its fine, if you want those automatics. I've done > > your example with DragNDrop, and no, it doesn't make several bundles, > > unless the CMakeLists.txt file says so. > > All DragNDrop does is take the results of a "make install" and put it in > > a dmg. The Bundle generator modifies the results of "make install" and > > puts it in a dmg. Its that modification that gets in my way sometimes. > > > > Also, one of my first tests of DragNDrop was making a working dmg of > > CMake without any modifications which was originally coded for > > PackageMaker (and other generators on other platforms). > > Can you give me an example using DragNDrop to combine two CMake-built > executables into a single bundle? My impression (perhaps dated) is that > I'd have to do some magic around making one of them a "source" file of > the other, so I could use MACOSX_PACKAGE_LOCATION to embed it in the > final bundle.
CMake does that (cmake and ccmake commandline apps get put into the cmake-gui bundle). To test, just set CMAKE_INSTALL_PREFIX=/ and run "cpack -G DragNDrop" on it. Did you need a different example than that? It does a set(CMAKE_INSTALL_PREFIX=/CMake.app/Contents) trick to put everything in the bundle. Another way, which I normally do, is to pass around a variable for the destination on install() commands. Clint _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake