| 1 | # |
| 2 | # Mach Operating System |
| 3 | # Copyright (c) 1986 Carnegie-Mellon University |
| 4 | # Copyright 2001-2018 Apple Inc. |
| 5 | # |
| 6 | # All rights reserved. The CMU software License Agreement |
| 7 | # specifies the terms and conditions for use and redistribution. |
| 8 | # |
| 9 | ###################################################################### |
| 10 | # |
| 11 | # Master Apple configuration file (see the master machine independent |
| 12 | # configuration file for a description of the file format). |
| 13 | # |
| 14 | ###################################################################### |
| 15 | # |
| 16 | # Standard Apple OS Configurations: |
| 17 | # -------- ----- -- --------------- |
| 18 | # |
| 19 | # KERNEL_BASE = [ arm64 xsmall msgb_small config_embedded config_enforce_signed_code config_requires_u32_munging config_darkboot ARM_EXTRAS_BASE ] |
| 20 | # KERNEL_RELEASE = [ KERNEL_BASE ] |
| 21 | # KERNEL_DEV = [ KERNEL_BASE development mach_assert config_xnupost proc_ref_debug pgtrace ] |
| 22 | # KERNEL_DEBUG = [ KERNEL_BASE debug mach_assert config_xnupost config_ltable_stats config_ltable_debug config_waitq_stats config_workloop_debug config_waitq_debug pgtrace ] |
| 23 | # BSD_BASE = [ mach_bsd config_workqueue psynch config_proc_uuid_policy config_personas config_imageboot config_imageboot_img4 ] |
| 24 | # BSD_RELEASE = [ BSD_BASE no_printf_str no_kprintf_str secure_kernel ] |
| 25 | # BSD_DEV = [ BSD_BASE config_netboot config_imgsrc_access config_lockerboot config_coredump pgo config_vnguard ] |
| 26 | # BSD_DEBUG = [ BSD_BASE config_netboot config_imgsrc_access config_lockerboot config_coredump pgo config_vnguard ] |
| 27 | # FILESYS_BASE = [ devfs fifo fs_compression config_protect config_mnt_rootsnap config_triggers config_fse routefs namedstreams config_dataless_files bindfs] |
| 28 | # FILESYS_RELEASE= [ FILESYS_BASE ] |
| 29 | # FILESYS_DEV = [ FILESYS_BASE fdesc ] |
| 30 | # FILESYS_DEBUG = [ FILESYS_BASE fdesc ] |
| 31 | # NFS_DEV = [ nfsclient nfsserver config_nfs_gss ] |
| 32 | # NFS_RELEASE = [ nfsclient ] |
| 33 | # NFS_DEBUG = [ nfsclient config_nfs_gss ] |
| 34 | # NETWORKING = [ inet tcpdrop_synfin bpfilter if_bridge traffic_mgt dummynet ah_all_crypto if_fake sixlowpan ] |
| 35 | # NETWORKING_RELEASE = [ NETWORKING ] |
| 36 | # NETWORKING_DEV = [ NETWORKING_RELEASE packet_mangler if_headless ] |
| 37 | # NETWORKING_DEBUG = [ NETWORKING_DEV ] |
| 38 | # VPN = [ ipsec flow_divert necp content_filter ] |
| 39 | # PF_RELEASE = [ pf ] |
| 40 | # PF_DEV = [ PF_RELEASE pflog ] |
| 41 | # PF_DEBUG = [ PF_DEV ] |
| 42 | # MULTIPATH = [ multipath mptcp ] |
| 43 | # IOKIT_BASE = [ iokit iokitcpp no_kextd no_kernel_hid config_sleep ] |
| 44 | # IOKIT_RELEASE = [ IOKIT_BASE ] |
| 45 | # IOKIT_DEV = [ IOKIT_BASE iokitstats iotracking ] |
| 46 | # IOKIT_DEBUG = [ IOKIT_BASE iokitstats iotracking] |
| 47 | # LIBKERN_BASE = [ libkerncpp config_blocks config_kec_fips zlib crypto_sha2 config_img4 ] |
| 48 | # LIBKERN_RELEASE =[ LIBKERN_BASE ] |
| 49 | # LIBKERN_DEV = [ LIBKERN_BASE iotracking ] |
| 50 | # LIBKERN_DEBUG = [ LIBKERN_BASE iotracking ] |
| 51 | # PERF_DBG_BASE = [ mach_kdp config_serial_kdp MONOTONIC_BASE kperf kpc ] |
| 52 | # PERF_DBG_RELEASE=[ PERF_DBG_BASE ist_kdebug ] |
| 53 | # PERF_DBG_DEV = [ PERF_DBG_BASE config_dtrace lock_stats zleaks kdp_interactive_debugging alternate_debugger interrupt_masked_debug ] |
| 54 | # PERF_DBG_DEBUG = [ PERF_DBG_BASE config_dtrace lock_stats zleaks kdp_interactive_debugging alternate_debugger interrupt_masked_debug ] |
| 55 | # MACH_BASE = [ mach slidable config_ecc_logging vc_progress_white mdebug ipc_debug importance_inheritance config_atm config_coalitions config_iosched config_library_validation config_sysdiagnose config_telemetry config_mach_bridge_recv_time config_quiesce_counter ] |
| 56 | # MACH_RELEASE = [ MACH_BASE config_skip_precise_user_kernel_time debugger_for_zone_info ] |
| 57 | # MACH_DEV = [ MACH_BASE task_zone_info config_io_accounting importance_trace config_ledger_interval_max ] |
| 58 | # MACH_DEBUG = [ MACH_BASE task_zone_info config_io_accounting importance_trace config_ledger_interval_max importance_debug ] |
| 59 | # SCHED_BASE = [ config_sched_traditional config_sched_multiq config_sched_deferred_ast config_clutch config_sched_sfi config_taskwatch ] |
| 60 | # SCHED_RELEASE = [ SCHED_BASE ] |
| 61 | # SCHED_DEV = [ SCHED_BASE ] |
| 62 | # SCHED_DEBUG = [ SCHED_BASE config_sched_grrr config_sched_proto ] |
| 63 | # VM_BASE = [ vps_dynamic_prio vm_pressure_events jetsam memorystatus config_code_decryption phantom_cache config_secluded_memory config_background_queue config_cs_validation_bitmap ] |
| 64 | # VM_RELEASE = [ VM_BASE ] |
| 65 | # VM_DEV = [ VM_BASE dynamic_codesigning ] |
| 66 | # VM_DEBUG = [ VM_BASE dynamic_codesigning ] |
| 67 | # SECURITY_BASE = [ config_macf kernel_integrity config_secure_bsd_root ] |
| 68 | # SECURITY_RELEASE = [ SECURITY_BASE ] |
| 69 | # SECURITY_DEV = [ SECURITY_BASE config_setuid config_kas_info ] |
| 70 | # SECURITY_DEBUG = [ SECURITY_BASE config_setuid config_kas_info ] |
| 71 | # RELEASE = [ KERNEL_RELEASE BSD_RELEASE FILESYS_RELEASE NFS_RELEASE SKYWALK_RELEASE NETWORKING_RELEASE PF_RELEASE MULTIPATH VPN IOKIT_RELEASE LIBKERN_RELEASE PERF_DBG_RELEASE MACH_RELEASE SCHED_RELEASE VM_RELEASE SECURITY_RELEASE ] |
| 72 | # DEVELOPMENT = [ KERNEL_DEV BSD_DEV FILESYS_DEV NFS_DEV SKYWALK_DEV NETWORKING_DEV PF_DEV MULTIPATH VPN IOKIT_DEV LIBKERN_DEV PERF_DBG_DEV MACH_DEV SCHED_DEV VM_DEV SECURITY_DEV ] |
| 73 | # DEBUG = [ KERNEL_DEBUG BSD_DEBUG FILESYS_DEBUG NFS_DEBUG SKYWALK_DEBUG NETWORKING_DEBUG PF_DEBUG MULTIPATH VPN IOKIT_DEBUG LIBKERN_DEBUG PERF_DBG_DEBUG MACH_DEBUG SCHED_DEBUG VM_DEBUG SECURITY_DEBUG ] |
| 74 | # KASAN = [ DEVELOPMENT config_kasan config_ubsan config_ksancov ] |
| 75 | # |
| 76 | ###################################################################### |
| 77 | # |
| 78 | machine "arm64" # <arm64> |
| 79 | |
| 80 | makeoptions OSFMK_MACHINE = "arm64" # <mach> |
| 81 | |
| 82 | options COUNT_SYSCALLS # count bsd system calls # <countcalls> |
| 83 | options TRASH_VFP_ON_SAVE # <debug,trash_vfp> |
| 84 | options ALTERNATE_DEBUGGER # <alternate_debugger> |
| 85 | |
| 86 | options CONFIG_VNODES=1024 # <xsmall> |
| 87 | |
| 88 | options CONFIG_FREEZE_SUSPENDED_MIN=4 # <xsmall> |
| 89 | |
| 90 | options CONFIG_MACH_APPROXIMATE_TIME |
| 91 | |
| 92 | options CONFIG_KERNEL_INTEGRITY # <kernel_integrity> |
| 93 | |
| 94 | options CONFIG_PGTRACE # <pgtrace> |
| 95 | options CONFIG_PGTRACE_NONKEXT # <pgtrace_nonkext> |
| 96 | pseudo-device pgtrace 1 init pgtrace_dev_init # <pgtrace_nonkext> |