1#
2# Mach Operating System
3# Copyright (c) 1986 Carnegie-Mellon University
4# All rights reserved.  The CMU software License Agreement
5# specifies the terms and conditions for use and redistribution.
6#  
7######################################################################
8#
9#  Master Apple configuration file (see the master machine independent
10#  configuration file for a description of the file format).
11#
12######################################################################
13#
14#  Apple (PSEUDO-)DEVICES (select any combination)
15#	ex   = Excelan EXOS 202 Ethernet interface
16#	ip   = Interphase V/SMD 3200 disk controller
17#	od   = Canon OMD-1 Optical Disk
18#	rd   = RAM disk
19#	sd   = SCSI disk
20#	sg   = Generic SCSI Device
21#	st   = SCSI tape
22#	fd   = Floppy Disk 
23#	en   = Integrated Ethernet controller
24#	dsp  = DSP560001 digital signal processor
25#	iplmeas = ipl time measurement
26#	nextp = NeXT Laser Printer
27#	sound = sound I/O
28#	vol   = removable volume support device
29#	venip = virtual Ethernet/IP network interface
30#	zs    = Serial device
31#
32#  MULTIPROCESSOR SUPPORT (select exactly one)
33#	multi = support 4 processors
34#	uni   = supports single processor
35#
36#  SPECIAL CHARACTERISTICS (select any combination)
37#	gdb        = GNU kernel debugger
38#	posix_kern = POSIX support
39#
40#  CPU TYPE (select exactly one)
41#	NeXT   = FIXME
42#
43######################################################################
44#  
45#  Standard Apple Research Configurations:
46#  -------- ----- -------- ---------------
47#  BASE =        [ intel mach medium config_dtrace vol pst gdb kernobjc fixpri simple_clock mdebug kernserv driverkit uxpr kernstack ipc_compat ipc_debug sysv_sem sysv_msg sysv_shm audit config_imageboot config_workqueue psynch zleaks memorystatus vm_pressure_events kperf kpc importance_inheritance dynamic_codesigning config_telemetry config_proc_uuid_policy ]
48#  FILESYS =	 [ devfs revfs hfs journaling fdesc config_fse quota namedstreams fifo config_volfs hfs_compression config_hfs_std config_hfs_alloc_rbtree config_hfs_trim config_imgsrc_access config_triggers config_ext_resolver config_searchfs config_hfs_dirlink config_appledouble ]
49#  NETWORKING =  [ inet inet6 ipv6send compat_oldsock tcpdrop_synfin bpfilter ipdivert ipfirewall ipv6firewall ipfw2 dummynet traffic_mgt sendfile bond vlan gif stf zlib ifnet_input_chk config_mbuf_jumbo if_bridge PF ]
50#  NFS =         [ nfsclient nfsserver ]
51#  VPN =         [ ipsec flow_divert ]
52#  PF =          [ pf pflog ]
53#  PKTSCHED =    [ pktsched_cbq pktsched_fairq pktsched_hfsc pktsched_priq ]
54#  CLASSQ =      [ classq_blue classq_red classq_rio ]
55#  MULTIPATH =   [ multipath mptcp ]
56#  RELEASE =     [ BASE NETWORKING NFS VPN FILESYS libdriver ]
57#  PROFILE =     [ RELEASE profile ]
58#  DEBUG =       [ BASE NETWORKING NFS VPN FILESYS libdriver_g debug xpr_debug mach_assert ]
59#
60#  EMBEDDED_BASE =	[ intel mach bsmall vol pst gdb kernobjc fixpri simple_clock mdebug kernserv driverkit uxpr kernstack ipc_compat ipc_debug sysv_sem sysv_msg sysv_shm audit config_imageboot config_workqueue psynch ]
61#  EMBEDDED_FILESYS =	[ devfs hfs journaling fdesc fifo ]
62#  EMBEDDED_NET =	[ inet compat_oldsock tcpdrop_synfin bpfilter ]
63#  EMBEDDED =		[ EMBEDDED_BASE EMBEDDED_NET VPN EMBEDDED_FILESYS libdriver no_printf_str no_kprintf_str no_kdebug ]
64#  DEVELOPMENT =	[ EMBEDDED_BASE EMBEDDED_NET NFS VPN EMBEDDED_FILESYS libdriver development mach_assert ]
65#
66######################################################################
67#
68machine		"x86_64"						# <intel>
69cpu		"x86_64"						# <intel>
70
71makeoptions	CCONFIGFLAGS = "-g -O3 -fno-omit-frame-pointer"	# <gdb>
72makeoptions	CCONFIGFLAGS = "-O3"				# <!gdb>
73makeoptions	RELOC = "00100000"				# <intel>
74makeoptions	SYMADDR = "00780000"				# <intel>
75
76options		GDB		# GNU kernel debugger		# <gdb>
77options		DEBUG		# general debugging code	# <debug>
78options		SHOW_SPACE	# print size of structures	# <debug>
79options		EVENTMETER	# event meter support		# <debug>
80options		FP_EMUL		# floating point emulation	# <fp>
81options		UXPR		# user-level XPR package	# <uxpr>
82config		mach_kernel	swap generic			# <mach>
83options		EVENT						# <event>
84
85options     NO_NESTED_PMAP                  # <no_nested_pmap>
86
87#
88# Note: MAC/AUDIT options must be set in all the bsd/conf, osfmk/conf, and 
89# security/conf MASTER files.
90#
91options		CONFIG_MACF					# Mandatory Access Control Framework
92options		CONFIG_MACF_SOCKET_SUBSET	# MAC socket subest (no labels)
93#options	CONFIG_MACF_SOCKET				# MAC socket labels
94#options	CONFIG_MACF_NET					# mbuf
95#options	CONFIG_MACF_DEBUG
96#options	CONFIG_MACF_MACH
97options		CONFIG_AUDIT			# Kernel auditing 
98
99# app-profiling i.e. pre-heating - off? 
100options   CONFIG_APP_PROFILE=0  
101
102# kernel performance tracing
103options     KPERF                  # <kperf>
104options     KPC                    # <kpc>
105
106#
107# code decryption... used on i386 for DSMOS
108# must be set in all the bsd/conf and osfmk/conf MASTER files
109#
110options		CONFIG_CODE_DECRYPTION
111
112#
113#  Ipl measurement system
114#
115pseudo-device	iplmeas						# <iplmeas>
116
117#
118#  NFS measurement system
119#
120pseudo-device	nfsmeas						# <nfsmeas>
121
122#
123#  Removable Volume support
124#
125pseudo-device	vol						# <vol>
126