Files
swift-mirror/stdlib/public/SDK/Foundation/CMakeLists.txt
Jordan Rose 01cb554387 Re-apply "Make all CF types Equatable and Hashable." (#4568)
Like NSObject, CFType has primitive operations CFEqual and CFHash,
so Swift should allow those types to show up in Hashable positions
(like dictionaries). The most general way to do this was to
introduce a new protocol, _CFObject, and then have the importer
automatically make all CF types conform to it.

This did require one additional change: the == implementation that
calls through to CFEqual is in a new CoreFoundation overlay, but the
conformance is in the underlying Clang module. Therefore, operator
lookup for conformances has been changed to look in the overlay for
an imported declaration (if there is one).

This re-applies 361ab62454, reverted in
f50b1e73dc, after a /very/ long interval
where we decided if it was worth breaking people who've added these
conformances on their own. Since the workaround isn't too difficult---
use `#if swift(>=3.2)` to guard the extension introducing the
conformance---it was deemed acceptable.

https://bugs.swift.org/browse/SR-2388
2017-05-08 14:05:11 -07:00

69 lines
1.9 KiB
CMake

cmake_minimum_required(VERSION 3.4.3)
include("../../../../cmake/modules/StandaloneOverlay.cmake")
add_swift_library(swiftFoundation ${SWIFT_SDK_OVERLAY_LIBRARY_BUILD_TYPES} IS_SDK_OVERLAY
AffineTransform.swift
Boxing.swift
Calendar.swift
CharacterSet.swift
Codable.swift
Data.swift
DataThunks.m
Date.swift
DateComponents.swift
DateInterval.swift
Decimal.swift
ExtraStringAPIs.swift
FileManager.swift
Foundation.swift
IndexPath.swift
IndexSet.swift
JSONEncoder.swift
Locale.swift
Measurement.swift
Notification.swift
NSArray.swift
NSCoder.swift
NSDate.swift
NSDictionary.swift
NSError.swift
NSExpression.swift
NSFastEnumeration.swift
NSGeometry.swift
NSIndexSet.swift
NSNumber.swift
NSPredicate.swift
NSRange.swift
NSSet.swift
NSString.swift
NSStringAPI.swift
NSStringEncodings.swift
NSTextCheckingResult.swift
NSUndoManager.swift
NSURL.swift
NSValue.swift.gyb
PersonNameComponents.swift
PlistEncoder.swift
ReferenceConvertible.swift
String.swift
TimeZone.swift
URL.swift
URLComponents.swift
URLRequest.swift
UUID.swift
SWIFT_COMPILE_FLAGS "${SWIFT_RUNTIME_SWIFT_COMPILE_FLAGS}"
LINK_FLAGS "${SWIFT_RUNTIME_SWIFT_LINK_FLAGS}"
SWIFT_MODULE_DEPENDS_OSX Darwin CoreFoundation CoreGraphics Dispatch IOKit ObjectiveC # auto-updated
SWIFT_MODULE_DEPENDS_IOS Darwin CoreFoundation CoreGraphics Dispatch ObjectiveC # auto-updated
SWIFT_MODULE_DEPENDS_TVOS Darwin CoreFoundation CoreGraphics Dispatch ObjectiveC # auto-updated
SWIFT_MODULE_DEPENDS_WATCHOS Darwin CoreFoundation CoreGraphics Dispatch ObjectiveC # auto-updated
FRAMEWORK_DEPENDS Foundation
DEPLOYMENT_VERSION_OSX ${SWIFTLIB_DEPLOYMENT_VERSION_FOUNDATION_OSX}
DEPLOYMENT_VERSION_IOS ${SWIFTLIB_DEPLOYMENT_VERSION_FOUNDATION_IOS}
DEPLOYMENT_VERSION_TVOS ${SWIFTLIB_DEPLOYMENT_VERSION_FOUNDATION_TVOS}
DEPLOYMENT_VERSION_WATCHOS ${SWIFTLIB_DEPLOYMENT_VERSION_FOUNDATION_WATCHOS}
)