|
|
@@ -22,10 +22,12 @@
|
|
|
|
|
|
#include <CoreFoundation/CoreFoundation.h>
|
|
|
|
|
|
+#ifdef HAVE_CoreServices
|
|
|
// For the old LocaleStringToLangAndRegionCodes() function, to convert
|
|
|
// to the old Script Manager RegionCode values needed for the 'LPic' data
|
|
|
// structure used for generating multi-lingual SLAs.
|
|
|
#include <CoreServices/CoreServices.h>
|
|
|
+#endif
|
|
|
|
|
|
static const char* SLAHeader =
|
|
|
"data 'LPic' (5000) {\n"
|
|
|
@@ -643,9 +645,11 @@ int cmCPackDragNDropGenerator::CreateDMG(const std::string& src_dir,
|
|
|
kCFStringEncodingMacRoman);
|
|
|
LangCode lang = 0;
|
|
|
RegionCode region = 0;
|
|
|
+#ifdef HAVE_CoreServices
|
|
|
OSStatus err = LocaleStringToLangAndRegionCodes(iso_language_cstr,
|
|
|
&lang, ®ion);
|
|
|
if (err != noErr)
|
|
|
+#endif
|
|
|
{
|
|
|
cmCPackLogger(cmCPackLog::LOG_ERROR,
|
|
|
"No language/region code available for " << iso_language_cstr
|
|
|
@@ -653,10 +657,12 @@ int cmCPackDragNDropGenerator::CreateDMG(const std::string& src_dir,
|
|
|
free(iso_language_cstr);
|
|
|
return 0;
|
|
|
}
|
|
|
+#ifdef HAVE_CoreServices
|
|
|
free(iso_language_cstr);
|
|
|
header_data.push_back(region);
|
|
|
header_data.push_back(i);
|
|
|
header_data.push_back(0);
|
|
|
+#endif
|
|
|
}
|
|
|
ofs << "data 'LPic' (5000) {\n";
|
|
|
ofs << std::hex << std::uppercase << std::setfill('0');
|