... | ... | @@ -141,20 +141,16 @@ CPack. |
|
|
|
|
|
## DragNDrop (OSX only)
|
|
|
|
|
|
Mac OSX Drag and Drop generator. This generator simply creates a .DMG
|
|
|
Mac OSX Drag and Drop generator. This generator creates a .DMG
|
|
|
disk image file that is populated by install() commands, as if it were
|
|
|
the install prefix. You would use this generator by creating an
|
|
|
executable with the **MACOSX_BUNDLE** option, then using **SOURCE
|
|
|
PROPERTY MACOSX_PACKAGE_LOCATION** and **TARGET PROPERTY
|
|
|
MACOSX_BUNDLE_PLIST** to put other files inside the bundle. Make sure
|
|
|
to install your executables to the root install prefix (use the
|
|
|
"DESTINATION ." argument to install()) so that they are visible to the
|
|
|
user when they open the DMG.
|
|
|
|
|
|
It seems to be impossible to put multiple executables inside a bundle
|
|
|
using this generator; for that you should use the Bundle generator.
|
|
|
However, you can include shared libraries by using **fixup_bundle()**
|
|
|
from BundleUtilities.
|
|
|
the install prefix.
|
|
|
|
|
|
To use this generator, create executable(s) with the **MACOSX_BUNDLE** option, and install them to the root of the package. They will then show up when the DMG is opened, and the user can drag and drop them into their Applications folder.
|
|
|
|
|
|
You will probably want to add extra files to each application bundle, like an `Info.plist` and an icon. To add your plist, specify it by setting the target property [MACOSX_BUNDLE_PLIST](https://cmake.org/cmake/help/latest/prop_tgt/MACOSX_BUNDLE.html) on your bundle target. To add other resource files, add them as source files to the bundle, and set the source property [MACOSX_PACKAGE_LOCATION](https://cmake.org/cmake/help/latest/prop_sf/MACOSX_PACKAGE_LOCATION.html) on them to choose where inside the bundle they'll go.
|
|
|
|
|
|
It is impossible to place multiple executables inside one single bundle
|
|
|
using this generator; it enforces a 1:1 bundle-to-executable relationship. If you need this functionality, you should use the Bundle generator. If your executable depends on additional shared libraries, you can include them by using **fixup_bundle()** from BundleUtilities.
|
|
|
|
|
|
## PackageMaker (OSX only)
|
|
|
|
... | ... | |