blob: 6068395c4ae2ef7b761080b52b553a8091c44367 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
|
{
lib,
# macOS things
frameworks,
libnetwork,
libs,
darwin-stubs,
objc4,
}:
{
# Used to add dependencies which are not picked up by gen-frameworks.py.
# Some of these are simply private frameworks the generator does not see.
# Trial and error, building things and adding dependencies when they fail.
addToFrameworks =
let
inherit (libs) libDER;
libobjc = objc4;
in
with frameworks;
{
# Below this comment are entries migrated from before the generator was
# added. If, for a given framework, you are able to reverify the extra
# deps are really necessary on top of the generator deps, move it above
# this comment (and maybe document your findings).
AVFoundation = {
inherit ApplicationServices AVFCapture AVFCore;
};
Accelerate = {
inherit CoreWLAN IOBluetooth;
};
AddressBook = {
inherit AddressBookCore ContactsPersistence libobjc;
};
AppKit = {
inherit AudioToolbox AudioUnit UIFoundation;
};
AudioToolbox = {
inherit AudioToolboxCore;
};
AudioUnit = {
inherit Carbon CoreAudio;
};
Carbon = {
inherit IOKit QuartzCore libobjc;
};
CoreAudio = {
inherit IOKit;
};
CoreData = {
inherit CloudKit;
};
CoreFoundation = {
inherit libobjc;
};
CoreGraphics = {
inherit SystemConfiguration;
};
CoreMIDIServer = {
inherit CoreMIDI;
};
CoreMedia = {
inherit ApplicationServices AudioToolbox AudioUnit;
};
CoreServices = {
inherit CoreAudio NetFS ServiceManagement;
};
CoreWLAN = {
inherit SecurityFoundation;
};
DiscRecording = {
inherit IOKit libobjc;
};
Foundation = {
inherit SystemConfiguration libobjc;
};
GameKit = {
inherit
GameCenterFoundation
GameCenterUI
GameCenterUICore
ReplayKit
;
};
ICADevices = {
inherit Carbon libobjc;
};
IOBluetooth = {
inherit CoreBluetooth;
};
JavaScriptCore = {
inherit libobjc;
};
Kernel = {
inherit IOKit;
};
LinkPresentation = {
inherit URLFormatting;
};
MediaToolbox = {
inherit AudioUnit;
};
MetricKit = {
inherit SignpostMetrics;
};
Network = {
inherit libnetwork;
};
PCSC = {
inherit CoreData;
};
PassKit = {
inherit PassKitCore;
};
QTKit = {
inherit
CoreMedia
CoreMediaIO
MediaToolbox
VideoToolbox
;
};
Quartz = {
inherit QTKit;
};
QuartzCore = {
inherit
ApplicationServices
CoreImage
CoreVideo
Metal
OpenCL
libobjc
;
};
Security = {
inherit IOKit libDER;
};
TWAIN = {
inherit Carbon;
};
VideoDecodeAcceleration = {
inherit CoreVideo;
};
WebKit = {
inherit ApplicationServices Carbon libobjc;
};
};
# Used to remove dependencies which are picked up by gen-frameworks.py -- used mainly to break
# cyclic dependencies.
removeFromFrameworks = { };
# Overrides for framework derivations.
overrideFrameworks = super: {
# This framework doesn't exist in newer SDKs (somewhere around 10.13), but
# there are references to it in nixpkgs.
QuickTime = throw "QuickTime framework not available";
# Seems to be appropriate given https://developer.apple.com/forums/thread/666686
JavaVM = super.JavaNativeFoundation;
};
}
|