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