summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean McBride <sean@rogue-research.com>2016-03-17 14:47:44 (GMT)
committerBrad King <brad.king@kitware.com>2016-03-17 17:53:51 (GMT)
commitc718070c0887e1c429d6ae4b717c006236c32736 (patch)
treea14c20a6cc6262a32be6f101c9ee29de55411b1f
parentb369959eb55dbea601315530185cb480c922cc77 (diff)
downloadCMake-c718070c0887e1c429d6ae4b717c006236c32736.zip
CMake-c718070c0887e1c429d6ae4b717c006236c32736.tar.gz
CMake-c718070c0887e1c429d6ae4b717c006236c32736.tar.bz2
CPack: Avoid requiring Carbon framework on OS X (#16021)
In commit v3.5.0-rc1~232^2 (CPackDMG: Add support for multilingual SLAs, 2015-10-19) we added use of the Carbon framework in order to get access to its APIs to convert Script Manager RegionCode values. This is not necessary. Instead we can use CoreServices. While at it, replace individual CoreFoundation includes with including the entire framework, which is the correct way.
-rw-r--r--Source/CMakeLists.txt2
-rw-r--r--Source/CPack/cmCPackDragNDropGenerator.cxx21
2 files changed, 7 insertions, 16 deletions
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
index ab70568..5b67a2d 100644
--- a/Source/CMakeLists.txt
+++ b/Source/CMakeLists.txt
@@ -728,7 +728,7 @@ endif()
add_library(CPackLib ${CPACK_SRCS})
target_link_libraries(CPackLib CMakeLib)
if(APPLE)
- target_link_libraries(CPackLib "-framework Carbon")
+ target_link_libraries(CPackLib "-framework CoreServices")
endif()
if(APPLE)
diff --git a/Source/CPack/cmCPackDragNDropGenerator.cxx b/Source/CPack/cmCPackDragNDropGenerator.cxx
index 7b94ca3..521b395 100644
--- a/Source/CPack/cmCPackDragNDropGenerator.cxx
+++ b/Source/CPack/cmCPackDragNDropGenerator.cxx
@@ -20,21 +20,12 @@
#include <iomanip>
-#include <CoreFoundation/CFBase.h>
-#include <CoreFoundation/CFString.h>
-#include <CoreFoundation/CFLocale.h>
-
-// The carbon framework is deprecated, but the Region codes it supplies are
-// needed for the LPic data structure used for generating multi-lingual SLAs.
-// There does not seem to be a replacement API for these region codes.
-#if defined(__clang__)
-# pragma clang diagnostic push
-# pragma clang diagnostic ignored "-Wdeprecated-declarations"
-#endif
-#include <Carbon/Carbon.h>
-#if defined(__clang__)
-# pragma clang diagnostic pop
-#endif
+#include <CoreFoundation/CoreFoundation.h>
+
+// 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>
static const char* SLAHeader =
"data 'LPic' (5000) {\n"