1 export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd
2 export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def
3 export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule
4 export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir
15 # Installs header file for user level -
16 # $(DSTROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
17 # $(DSTROOT)/usr/include/
19 appleapiopts.h acct.h aio.h attr.h \
20 buf.h cdefs.h clonefile.h conf.h \
21 dir.h dirent.h disk.h dkstat.h dtrace.h dtrace_glue.h dtrace_impl.h \
22 errno.h ev.h event.h fasttrap.h fasttrap_isa.h fcntl.h file.h filedesc.h filio.h fsgetpath.h gmon.h \
24 ioctl_compat.h ipc.h kernel.h kernel_types.h kern_event.h lctx.h loadable_fs.h lock.h lockf.h \
25 kauth.h kdebug.h kdebug_signpost.h kern_control.h lockstat.h malloc.h \
26 mbuf.h mman.h mount.h msg.h msgbuf.h netport.h param.h paths.h pipe.h poll.h \
27 proc.h proc_info.h ptrace.h queue.h quota.h reboot.h resource.h resourcevar.h \
28 sbuf.h posix_sem.h posix_shm.h random.h sdt.h\
29 select.h sem.h semaphore.h shm.h signal.h signalvar.h snapshot.h socket.h socketvar.h sockio.h stat.h stdio.h \
30 sysctl.h syslimits.h syslog.h sys_domain.h termios.h time.h \
31 timeb.h times.h tprintf.h trace.h tty.h ttychars.h ttycom.h \
32 ttydefaults.h ttydev.h types.h ubc.h ucontext.h ucred.h uio.h un.h unistd.h unpcb.h \
33 user.h utfconv.h utsname.h vadvise.h vcmd.h \
34 vm.h vmmeter.h vmparam.h vnioctl.h vnode.h vnode_if.h vstat.h wait.h xattr.h \
35 _select.h _structs.h _types.h _endian.h domain.h protosw.h \
36 spawn.h timex.h commpage.h log_data.h
38 # Installs header file for DriverKit drivers -
39 # $(DSTROOT)/System/DriverKit/System/usr/include/
40 DRIVERKIT_DATAFILES = \
43 # Installs header file for Apple internal use in user level -
44 # $(DSTROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
51 content_protection.h \
72 kern_memorystatus_freeze.h \
73 kern_memorystatus_notify.h \
106 memory_maintenance.h \
109 # Installs header file for Apple internal use by DriverKit drivers -
110 # $(DSTROOT)/System/DriverKit/System/usr/local/include/
111 DRIVERKIT_PRIVATE_DATAFILES = \
112 appleapiopts.h kdebug.h
114 # Installs header file for kernel extensions -
115 # $(DSTROOT)/System/Library/Frameworks/Kernel.framework/Headers
116 # $(DSTROOT)/System/Library/Frameworks/Kernel.framework/PrivateHeaders
118 appleapiopts.h attr.h \
119 buf.h cdefs.h conf.h \
120 dir.h dirent.h disk.h disklabel.h dkstat.h \
121 errno.h ev.h event.h fcntl.h file.h filio.h \
122 ioccom.h ioctl.h ipc.h \
123 ioctl_compat.h kernel.h kernel_types.h kern_event.h lock.h lockf.h \
124 kauth.h kdebug.h kdebug_kernel.h md5.h kern_control.h imgact.h malloc.h \
125 namei.h mman.h mbuf.h mount.h netport.h param.h paths.h \
126 proc.h queue.h random.h resource.h \
127 sbuf.h posix_sem.h posix_shm.h sem.h shm.h \
128 select.h signal.h socket.h socketvar.h sockio.h stat.h stdio.h \
129 sysctl.h syslimits.h syslog.h systm.h sys_domain.h time.h \
130 types.h ubc.h ucontext.h ucred.h uio.h un.h unistd.h unpcb.h \
131 utfconv.h vm.h vmparam.h vnode.h vnode_if.h xattr.h \
132 _select.h _structs.h _types.h _endian.h protosw.h domain.h \
133 kpi_mbuf.h kpi_socket.h kpi_socketfilter.h \
134 ttycom.h termios.h msg.h \
136 spawn.h timex.h commpage.h
137 # The last line was added to export needed headers for the MAC calls
138 # whose source is outside of the xnu/bsd tree.
140 # Installs header file for Apple internal use for kernel extensions -
141 # $(DSTROOT)/System/Library/Frameworks/Kernel.framework/PrivateHeaders
142 PRIVATE_KERNELFILES = \
145 content_protection.h \
155 kern_memorystatus.h \
156 kern_memorystatus_freeze.h \
157 kern_memorystatus_notify.h \
174 ttydefaults.h ttydev.h \
182 memory_maintenance.h \
208 INSTALL_MI_LIST = ${DATAFILES}
210 INSTALL_DRIVERKIT_MI_LIST = ${DRIVERKIT_DATAFILES}
212 INSTALL_MI_GEN_LIST = syscall.h _posix_availability.h _symbol_aliasing.h
214 INSTALL_DRIVERKIT_MI_GEN_LIST = _posix_availability.h _symbol_aliasing.h
218 EXPORT_MI_LIST = ${KERNELFILES} ${PRIVATE_KERNELFILES} ${XNU_ONLY_EXPORTS}
220 EXPORT_MI_GEN_LIST = syscall.h sysproto.h kdebugevents.h
224 # /System/Library/Frameworks/System.framework/PrivateHeaders
225 INSTALL_MI_LCL_LIST = ${PRIVATE_DATAFILES}
227 INSTALL_DRIVERKIT_MI_LCL_LIST = ${DRIVERKIT_PRIVATE_DATAFILES}
229 # /System/Library/Frameworks/Kernel.framework/PrivateHeaders
230 INSTALL_KF_MI_LCL_LIST = ${KERNELFILES} ${PRIVATE_KERNELFILES}
232 INSTALL_KF_MI_LCL_GEN_LIST = sysproto.h
234 # /System/Library/Frameworks/Kernel.framework/Headers
235 INSTALL_KF_MI_LIST = ${KERNELFILES}
237 INSTALL_KF_MI_GEN_LIST =
239 MAKESYSCALLS = $(SRCROOT)/bsd/kern/makesyscalls.sh
240 MAKEKDEBUGEVENTS = $(SRCROOT)/bsd/kern/makekdebugevents.py
242 $(OBJROOT)/cscope.genhdrs:
243 $(_v)mkdir -p $(OBJROOT)/cscope.genhdrs
245 $(OBJROOT)/syscall.codes: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS)
246 $(call makelog,[$(CMD_MC)] $(ColorH)GENERATING$(Color0) $(ColorLF)$@$(Color0) from $(ColorF)$<$(Color0))
247 $(_v)$(MAKESYSCALLS) $< trace > $@
249 $(OBJROOT)/trace.codes: $(SRCROOT)/bsd/kern/trace_codes $(OBJROOT)/syscall.codes
250 $(_v)sort -g $(SRCROOT)/bsd/kern/trace_codes $(OBJROOT)/syscall.codes >$@
252 syscall.h: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS) $(OBJROOT)/cscope.genhdrs
253 $(call makelog,[$(CMD_MC)] $(ColorH)GENERATING$(Color0) $(ColorLF)bsd/sys/$@$(Color0) from $(ColorF)$<$(Color0))
254 @echo "$(OBJPATH)/bsd/sys/$@" > $(OBJROOT)/cscope.genhdrs/$@.path
255 $(_v)$(MAKESYSCALLS) $< header > /dev/null
257 sysproto.h: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS) $(OBJROOT)/cscope.genhdrs
258 $(call makelog,[$(CMD_MC)] $(ColorH)GENERATING$(Color0) $(ColorLF)bsd/sys/$@$(Color0) from $(ColorF)$<$(Color0))
259 @echo "$(OBJPATH)/bsd/sys/$@" > $(OBJROOT)/cscope.genhdrs/$@.path
260 $(_v)$(MAKESYSCALLS) $< proto > /dev/null
262 kdebugevents.h: $(OBJROOT)/trace.codes $(MAKEKDEBUGEVENTS) $(OBJROOT)/cscope.genhdrs
263 $(call makelog,[$(CMD_MC)] $(ColorH)GENERATING$(Color0) $(ColorLF)bsd/sys/$@$(Color0) from $(ColorF)$<$(Color0))
264 @echo "$(OBJPATH)/bsd/sys/$@" > $(OBJROOT)/cscope.genhdrs/$@.path
265 $(_v)$(MAKEKDEBUGEVENTS) $< > "$(OBJPATH)/bsd/sys/$@"
267 MAKE_POSIX_AVAILABILITY = $(SRCROOT)/bsd/sys/make_posix_availability.sh
268 _posix_availability.h: $(MAKE_POSIX_AVAILABILITY)
269 $(call makelog,[$(CMD_MC)] $(ColorH)GENERATING$(Color0) $(ColorLF)bsd/sys/$@$(Color0))
270 $(_v)$(MAKE_POSIX_AVAILABILITY) "$@"
272 MAKE_SYMBOL_ALIASING = $(SRCROOT)/bsd/sys/make_symbol_aliasing.sh
273 _symbol_aliasing.h: $(MAKE_SYMBOL_ALIASING)
274 $(call makelog,[$(CMD_MC)] $(ColorH)GENERATING$(Color0) $(ColorLF)bsd/sys/$@$(Color0))
275 $(_v)$(MAKE_SYMBOL_ALIASING) "$(SDKROOT)" "$@"
277 # generated headers needed early (used by iig during installhdrs of iokit/DriverKit)
278 SETUP_GEN_LIST = _posix_availability.h _symbol_aliasing.h
280 do_build_setup:: $(SETUP_GEN_LIST)
283 $(DSTROOT)/$(INSTALL_SHARE_MISC_DIR)/trace.codes
285 $(TRACE_CODES_DEST): $(OBJROOT)/trace.codes
286 $(_v)$(MKDIR) $(DSTROOT)/$(INSTALL_SHARE_MISC_DIR)
287 $(call makelog,INSTALL $(@F))
288 $(_v)$(INSTALL) $(INSTALL_FLAGS) $(OBJROOT)/trace.codes $@
290 do_textfiles_install:: $(TRACE_CODES_DEST)
292 include $(MakeInc_rule)
293 include $(MakeInc_dir)