Commits

John McCall committed 2ff77a9cd11
Only import *Ref typedefs as CF types if they have a bridging attribute or appear in a whitelist. The initial whitelist is based on an audit I performed of our current public SDKs. If there are CF types which appear only in our internal SDKs, and somebody urgently needs to use them from Swift, they can adopt the bridging attributes. The goal is to eventually eliminate the whitelist and rely solely on bridging attributes anyway. Sadly, CoreCooling was not included in my SDK audit and must be explicitly annotated. :( I've left the main database organized by framework, but I wanted a quasi-lexicographically sorted version to permit efficient lookup. We generate that copy automatically with gyb. I ended up having to tweak handle_gyb_sources to allow it to drop the result in CMAKE_CURRENT_BINARY_DIR instead of CMAKE_CURRENT_BINARY_DIR/{4,8} if an architecture is not provided. I think this is abstractly reasonable for generated includes, which have independent ability to detect the target word size. But just between you and me, I did it because I couldn't figure out how to add "-I${CMAKE_CURRENT_BINARY_DIR/{4,8}" as a compile flag; the obvious thing didn't work. Anyway, I'd appreciate it if someone double-checked my cmake hackery here. Swift SVN r24850