CPack: Fix PackageMaker .dmg HFS+ creation on macOS APFS hosts

When running `hdiutil create`, specify the HFS+ filesystem explicitly.
Otherwise `hdiutil` may choose a filesystem based on the host.  We do
not want to create APFS images for `.dmg` packages because they may not
mount on macOS versions prior to 10.12.

This was missed in commit 39b50975d9 (CPack: Fix .dmg HFS+ creation on
macOS APFS hosts, 2017-10-02).

Reported-by: Alan Garny
This commit is contained in:
Brad King 2017-10-05 10:30:34 -04:00
parent 39b50975d9
commit 4f2a983c21

View File

@ -288,8 +288,8 @@ int cmCPackPackageMakerGenerator::PackageFiles()
tmpFile += "/hdiutilOutput.log";
std::ostringstream dmgCmd;
dmgCmd << "\"" << this->GetOption("CPACK_INSTALLER_PROGRAM_DISK_IMAGE")
<< "\" create -ov -format UDZO -srcfolder \"" << packageDirFileName
<< "\" \"" << packageFileNames[0] << "\"";
<< "\" create -ov -fs HFS+ -format UDZO -srcfolder \""
<< packageDirFileName << "\" \"" << packageFileNames[0] << "\"";
std::string output;
int retVal = 1;
int numTries = 10;