# Current as of 10.12 # Epic weird knot-tying happening here. # TODO: clean up the process for generating this and include it { frameworks, libs, libobjc, }: with frameworks; with libs; { AGL = { inherit Carbon OpenGL; }; AVFoundation = { inherit ApplicationServices CoreGraphics CoreMedia MediaToolbox; }; AVKit = {}; Accounts = {}; AddressBook = { inherit libobjc Carbon ContactsPersistence; }; AppKit = { inherit ApplicationServices AudioToolbox AudioUnit Foundation QuartzCore UIFoundation; }; AppKitScripting = {}; AppleScriptKit = {}; AppleScriptObjC = {}; AudioToolbox = { inherit CoreAudio CoreMIDI; }; AudioUnit = { inherit AudioToolbox Carbon CoreAudio; }; AudioVideoBridging = { inherit Foundation; }; Automator = {}; CFNetwork = {}; CalendarStore = {}; Cocoa = { inherit AppKit CoreData; }; Collaboration = {}; # Impure version of CoreFoundation, this should not be used unless another # framework includes headers that are not available in the pure version. CoreFoundation = {}; CoreAudio = { inherit IOKit; }; CoreAudioKit = { inherit AudioUnit; }; CoreData = {}; CoreGraphics = { inherit Accelerate IOKit IOSurface SystemConfiguration; }; CoreImage = {}; CoreLocation = {}; CoreMIDI = {}; CoreMIDIServer = { inherit CoreMIDI; }; CoreMedia = { inherit ApplicationServices AudioToolbox AudioUnit CoreAudio CoreGraphics CoreVideo; }; CoreMediaIO = { inherit CoreMedia; }; CoreText = { inherit CoreGraphics; }; CoreVideo = { inherit ApplicationServices CoreGraphics IOSurface OpenGL; }; CoreWLAN = { inherit SecurityFoundation; }; DVDPlayback = {}; DirectoryService = {}; DiscRecording = { inherit libobjc CoreServices IOKit; }; DiscRecordingUI = {}; DiskArbitration = { inherit IOKit; }; EventKit = {}; ExceptionHandling = {}; FWAUserLib = {}; ForceFeedback = { inherit IOKit; }; Foundation = { inherit libobjc CoreFoundation Security ApplicationServices SystemConfiguration; }; GLKit = {}; GLUT = { inherit OpenGL; }; GSS = {}; GameCenter = {}; GameController = {}; GameKit = { inherit Cocoa Foundation GameCenter GameController GameplayKit Metal MetalKit ModelIO SceneKit SpriteKit; }; GameplayKit = {}; Hypervisor = {}; ICADevices = { inherit libobjc Carbon IOBluetooth; }; IMServicePlugIn = {}; IOBluetoothUI = { inherit IOBluetooth; }; IOKit = {}; IOSurface = { inherit IOKit xpc; }; ImageCaptureCore = {}; ImageIO = { inherit CoreGraphics; }; InputMethodKit = { inherit Carbon; }; InstallerPlugins = {}; InstantMessage = {}; JavaFrameEmbedding = {}; JavaNativeFoundation = {}; JavaRuntimeSupport = {}; JavaScriptCore = { inherit libobjc; }; Kerberos = {}; Kernel = { inherit IOKit; }; LDAP = {}; LatentSemanticMapping = { inherit Carbon; }; LocalAuthentication = {}; MapKit = {}; MediaAccessibility = { inherit CoreGraphics CoreText QuartzCore; }; MediaPlayer = {}; MediaToolbox = { inherit AudioToolbox AudioUnit CoreMedia; }; Metal = {}; MetalKit = { inherit ModelIO Metal; }; ModelIO = {}; NetFS = {}; OSAKit = { inherit Carbon; }; OpenAL = {}; OpenCL = { inherit IOSurface OpenGL; }; OpenGL = {}; PCSC = { inherit CoreData; }; PreferencePanes = {}; PubSub = {}; QTKit = { inherit CoreMediaIO CoreMedia MediaToolbox QuickTime VideoToolbox; }; QuickLook = { inherit ApplicationServices; }; SceneKit = {}; ScreenSaver = {}; Scripting = {}; ScriptingBridge = {}; Security = { inherit IOKit; }; SecurityFoundation = {}; SecurityInterface = { inherit Security SecurityFoundation; }; ServiceManagement = { inherit Security; }; Social = {}; SpriteKit = {}; StoreKit = {}; SyncServices = {}; SystemConfiguration = { inherit Security; }; TWAIN = { inherit Carbon; }; Tcl = {}; VideoDecodeAcceleration = { inherit CoreVideo; }; VideoToolbox = { inherit CoreMedia CoreVideo; }; WebKit = { inherit libobjc ApplicationServices Carbon JavaScriptCore OpenGL; }; # Umbrellas Accelerate = { inherit CoreWLAN IOBluetooth; }; ApplicationServices = { inherit CoreGraphics CoreServices CoreText ImageIO; }; Carbon = { inherit libobjc ApplicationServices CoreServices Foundation IOKit Security QuartzCore; }; CoreBluetooth = {}; # TODO: figure out which part of the umbrella depends on CoreFoundation and move it there. CoreServices = { inherit CFNetwork CoreFoundation CoreAudio CoreData DiskArbitration Security NetFS OpenDirectory ServiceManagement; }; IOBluetooth = { inherit CoreBluetooth IOKit; }; JavaVM = {}; OpenDirectory = {}; Quartz = { inherit QuartzCore QuickLook QTKit; }; QuartzCore = { inherit libobjc ApplicationServices CoreVideo OpenCL CoreImage Metal; }; QuickTime = { inherit ApplicationServices AudioUnit Carbon CoreAudio CoreServices OpenGL QuartzCore; }; vmnet = {}; }