From c718070c0887e1c429d6ae4b717c006236c32736 Mon Sep 17 00:00:00 2001 From: Sean McBride Date: Thu, 17 Mar 2016 10:47:44 -0400 Subject: [PATCH] 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. --- Source/CMakeLists.txt | 2 +- Source/CPack/cmCPackDragNDropGenerator.cxx | 19 +++++-------------- 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt index ab70568d3..5b67a2dd9 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 7b94ca3c0..521b3952f 100644 --- a/Source/CPack/cmCPackDragNDropGenerator.cxx +++ b/Source/CPack/cmCPackDragNDropGenerator.cxx @@ -20,21 +20,12 @@ #include -#include -#include -#include +#include -// 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 -#if defined(__clang__) -# pragma clang diagnostic pop -#endif +// 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 static const char* SLAHeader = "data 'LPic' (5000) {\n"