xref: /xnu-8792.81.2/osfmk/mach/mach.modulemap (revision 19c3b8c28c31cb8130e034cfb5df6bf9ba342d90)
1module Darwin.Mach [system] {
2  header "mach/mach.h"
3  export *
4
5  // declares string_t which sometimes conflicts with other declarations
6  explicit module audit_triggers_types {
7    header "mach/audit_triggers_types.h"
8    export *
9  }
10
11  module boolean {
12    header "mach/boolean.h"
13    export *
14  }
15
16  module bootstrap {
17    header "mach/bootstrap.h"
18    export *
19  }
20
21  module clock {
22    header "mach/clock.h"
23    export *
24  }
25
26  module clock_priv {
27    header "mach/clock_priv.h"
28    export *
29  }
30
31  module clock_reply {
32    header "mach/clock_reply.h"
33    export *
34  }
35
36  module clock_types {
37    header "mach/clock_types.h"
38    export *
39  }
40
41  module dyld_kernel {
42    header "mach/dyld_kernel.h"
43    export *
44  }
45
46  module error {
47    header "mach/error.h"
48    export *
49  }
50
51  module exc {
52    header "mach/exc.h"
53    export *
54  }
55
56  module exception {
57    header "mach/exception.h"
58    export *
59  }
60
61  module exception_types {
62    header "mach/exception_types.h"
63    export *
64  }
65
66  module host_info {
67    header "mach/host_info.h"
68    export *
69  }
70
71  module host_notify {
72    header "mach/host_notify.h"
73    export *
74  }
75
76  module host_priv {
77    header "mach/host_priv.h"
78    export *
79  }
80
81  module host_reboot {
82    header "mach/host_reboot.h"
83    export *
84  }
85
86  module host_security {
87    header "mach/host_security.h"
88    export *
89  }
90
91  module host_special_ports {
92    header "mach/host_special_ports.h"
93    export *
94  }
95
96  #ifndef XNU_PLATFORM_MacOSX
97  module hv {
98    header "arm64/hv/hv_kern_types.h"
99    export *
100  }
101
102  #endif
103  module kern_return {
104    header "mach/kern_return.h"
105    export *
106  }
107
108  module kmod {
109    header "mach/kmod.h"
110    export *
111  }
112
113  module mach_error {
114    header "mach/mach_error.h"
115    export *
116  }
117
118  module mach_host {
119    header "mach/mach_host.h"
120    export *
121  }
122
123  module mach_init {
124    header "mach/mach_init.h"
125    export *
126  }
127
128  module mach_interface {
129    header "mach/mach_interface.h"
130    export *
131  }
132
133  module mach_param {
134    header "mach/mach_param.h"
135    export *
136  }
137
138  module mach_port {
139    header "mach/mach_port.h"
140    export *
141  }
142
143  module mach_right {
144    header "mach/mach_right.h"
145    export *
146  }
147
148  module mach_syscalls {
149    header "mach/mach_syscalls.h"
150    export *
151  }
152
153  module mach_time {
154    header "mach/mach_time.h"
155    export *
156  }
157
158  module mach_traps {
159    header "mach/mach_traps.h"
160    export *
161  }
162
163  module mach_types {
164    header "mach/mach_types.h"
165    export *
166  }
167
168  #ifdef XNU_KERNEL_PRIVATE
169  // usr/include/mach/mach_vm.h is public on macOS, but an #error
170  // on the other platforms. Its actual contents are installed
171  // to usr/local/include/mach/mach_vm.h on other platforms.
172  #endif
173  #ifdef XNU_PLATFORM_MacOSX
174  module mach_vm {
175    header "mach/mach_vm.h"
176    export *
177  }
178
179  #endif
180  module mach_voucher {
181    header "mach/mach_voucher.h"
182    export *
183  }
184
185  module mach_voucher_types {
186    header "mach/mach_voucher_types.h"
187    export *
188  }
189
190  module memory_entry {
191    header "mach/memory_entry.h"
192    export *
193  }
194
195  module memory_object_types {
196    header "mach/memory_object_types.h"
197    export *
198  }
199
200  module message {
201    header "mach/message.h"
202    export *
203  }
204
205  module mig {
206    header "mach/mig.h"
207    export *
208  }
209
210  module mig_errors {
211    header "mach/mig_errors.h"
212    export *
213  }
214
215  module mig_strncpy_zerofill_support {
216    header "mach/mig_strncpy_zerofill_support.h"
217    export *
218  }
219
220  module mig_voucher_support {
221    header "mach/mig_voucher_support.h"
222    export *
223  }
224
225  module ndr {
226    header "mach/ndr.h"
227    export *
228  }
229
230  module notify {
231    header "mach/notify.h"
232    export *
233  }
234
235  module policy {
236    header "mach/policy.h"
237    export *
238  }
239
240  module port {
241    header "mach/port.h"
242    export *
243  }
244
245  module port_obj {
246    header "mach/port_obj.h"
247    export *
248  }
249
250  module processor {
251    header "mach/processor.h"
252    export *
253  }
254
255  module processor_info {
256    header "mach/processor_info.h"
257    export *
258  }
259
260  module processor_set {
261    header "mach/processor_set.h"
262    export *
263  }
264
265  module rpc {
266    header "mach/rpc.h"
267    export *
268  }
269
270  #ifdef XNU_KERNEL_PRIVATE
271  // The XNU_PLATFORM_MacOSX headers are in the public SDK for macOS,
272  // but mastered out of the public SDK for the other OSes.
273  #endif
274  #ifdef XNU_PLATFORM_MacOSX
275  module sdt {
276    header "mach/sdt.h"
277    header "sys/sdt.h"
278    export *
279  }
280
281  #endif
282  module semaphore {
283    header "mach/semaphore.h"
284    export *
285  }
286
287  #ifdef XNU_PLATFORM_MacOSX
288  module shared_region {
289    header "mach/shared_region.h"
290    export *
291  }
292
293  #endif
294  module std_types {
295    header "mach/std_types.h"
296    export *
297  }
298
299  module sync {
300    header "mach/sync.h"
301    export *
302  }
303
304  module sync_policy {
305    header "mach/sync_policy.h"
306    export *
307  }
308  #ifdef XNU_KERNEL_PRIVATE
309  // usr/include/mach/syscall_sw.h is mastered out of all SDKs.
310  #endif
311
312  module task {
313    header "mach/task.h"
314    export *
315  }
316
317  module task_info {
318    header "mach/task_info.h"
319    export *
320  }
321
322  module task_inspect {
323    header "mach/task_inspect.h"
324    export *
325  }
326
327  module task_policy {
328    header "mach/task_policy.h"
329    export *
330  }
331
332  module task_special_ports {
333    header "mach/task_special_ports.h"
334    export *
335  }
336
337  module thread_act {
338    header "mach/thread_act.h"
339    export *
340  }
341
342  module thread_info {
343    header "mach/thread_info.h"
344    export *
345  }
346
347  module thread_policy {
348    header "mach/thread_policy.h"
349    export *
350  }
351
352  module thread_special_ports {
353    header "mach/thread_special_ports.h"
354    export *
355  }
356
357  module thread_state {
358    header "mach/thread_state.h"
359    export *
360  }
361
362  module thread_status {
363    header "mach/thread_status.h"
364    export *
365  }
366
367  module thread_switch {
368    header "mach/thread_switch.h"
369    export *
370  }
371
372  module time_value {
373    header "mach/time_value.h"
374    export *
375  }
376
377  module vm_attributes {
378    header "mach/vm_attributes.h"
379    export *
380  }
381
382  module vm_behavior {
383    header "mach/vm_behavior.h"
384    export *
385  }
386
387  module vm_inherit {
388    header "mach/vm_inherit.h"
389    export *
390  }
391
392  module vm_map {
393    header "mach/vm_map.h"
394    export *
395  }
396
397  module vm_page_size {
398    header "mach/vm_page_size.h"
399    export *
400  }
401
402  module vm_param {
403    header "mach/vm_param.h"
404    export *
405  }
406
407  module vm_prot {
408    header "mach/vm_prot.h"
409    export *
410  }
411
412  module vm_purgable {
413    header "mach/vm_purgable.h"
414    export *
415  }
416
417  module vm_region {
418    header "mach/vm_region.h"
419    export *
420  }
421
422  module vm_statistics {
423    header "mach/vm_statistics.h"
424    export *
425  }
426
427  module vm_sync {
428    header "mach/vm_sync.h"
429    export *
430  }
431
432  module vm_task {
433    header "mach/vm_task.h"
434    export *
435  }
436
437  module vm_types {
438    header "mach/vm_types.h"
439    export *
440  }
441
442  #ifdef XNU_KERNEL_PRIVATE
443  // mach_eventlink.h doesn't compile because it depends on
444  // mach_eventlink_types.h which is private.
445  #endif
446  exclude header "mach/mach_eventlink.h"
447
448  #ifdef XNU_PLATFORM_MacOSX
449  exclude header "mach/shared_memory_server.h" // deprecated
450
451  #endif
452  extern module machine "mach_machine.modulemap"
453
454  extern module debug "mach_debug.modulemap"
455}
456