xref: /xnu-11215/bsd/sys/Makefile (revision 855239e5)
1export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd
2export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def
3export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule
4export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir
5
6
7include $(MakeInc_cmd)
8include $(MakeInc_def)
9
10INSTINC_SUBDIRS =
11
12EXPINC_SUBDIRS =
13
14# Installs header file for user level -
15#	  $(DSTROOT)/System/Library/Frameworks/System.framework/Headers
16#	  $(DSTROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
17#	  $(DSTROOT)/usr/include/
18DATAFILES = \
19	appleapiopts.h 	acct.h aio.h attr.h \
20	buf.h cdefs.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 gmon.h \
23	ioccom.h ioctl.h \
24	ioctl_compat.h ipc.h kernel.h kernel_types.h kern_event.h loadable_fs.h lock.h lockf.h \
25	kauth.h kdebug.h kern_control.h kern_memorystatus.h lctx.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 random.h reboot.h resource.h resourcevar.h \
28	sbuf.h posix_sem.h posix_shm.h sdt.h \
29	select.h sem.h semaphore.h shm.h signal.h signalvar.h socket.h socketvar.h sockio.h stat.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
37
38# Installs header file for Apple internal use in user level -
39#	  $(DSTROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
40PRIVATE_DATAFILES = \
41	codesign.h \
42	content_protection.h \
43	disklabel.h \
44	fileport.h \
45	fsctl.h \
46	fsgetpath.h \
47	fslog.h \
48	imgsrc.h \
49	ipcs.h \
50	shm_internal.h \
51	spawn_internal.h \
52	tree.h \
53	ux_exception.h \
54	proc_info.h \
55	process_policy.h \
56	vnioctl.h \
57	priv.h
58
59# Installs header file for kernel extensions -
60#	  $(DSTROOT)/System/Library/Frameworks/Kernel.framework/Headers
61#	  $(DSTROOT)/System/Library/Frameworks/Kernel.framework/PrivateHeaders
62KERNELFILES = \
63	appleapiopts.h 	 attr.h \
64	buf.h cdefs.h conf.h \
65	dir.h dirent.h disk.h disklabel.h dkstat.h  \
66	errno.h ev.h event.h fcntl.h file.h filio.h \
67	ioccom.h ioctl.h ipc.h \
68	ioctl_compat.h  kernel.h kernel_types.h kern_event.h lctx.h lock.h lockf.h \
69	kauth.h kdebug.h  md5.h kern_callout.h kern_control.h kern_memorystatus.h imgact.h malloc.h namei.h \
70	mman.h mbuf.h mount.h netport.h param.h paths.h \
71	proc.h  queue.h random.h resource.h \
72	sbuf.h posix_sem.h posix_shm.h sem.h shm.h \
73	select.h signal.h socket.h socketvar.h sockio.h stat.h \
74	sysctl.h syslimits.h syslog.h systm.h sys_domain.h  time.h \
75	types.h ubc.h ucontext.h ucred.h uio.h un.h unistd.h unpcb.h \
76	utfconv.h vm.h vmparam.h vnode.h vnode_if.h xattr.h \
77	_select.h _structs.h _types.h _endian.h protosw.h domain.h \
78	kpi_mbuf.h kpi_socket.h kpi_socketfilter.h \
79	ttycom.h termios.h msg.h \
80	wait.h \
81	spawn.h
82# The last line was added to export needed headers for the MAC calls
83# whose source is outside of the xnu/bsd tree.
84
85
86# Installs header file for Apple internal use for kernel extensions -
87#	  $(DSTROOT)/System/Library/Frameworks/Kernel.framework/PrivateHeaders
88PRIVATE_KERNELFILES = \
89	codesign.h \
90	cprotect.h \
91	content_protection.h \
92	decmpfs.h \
93	disktab.h \
94	fbt.h \
95	fileport.h \
96	fsctl.h \
97	fslog.h \
98	mach_swapon.h \
99	msgbuf.h \
100	eventvar.h \
101	quota.h \
102	sem_internal.h \
103	shm_internal.h \
104	signalvar.h \
105	tty.h  ttychars.h \
106	ttydefaults.h ttydev.h \
107	user.h \
108	vfs_context.h \
109	vmmeter.h \
110	spawn_internal.h \
111	priv.h
112
113
114# /System/Library/Frameworks/System.framework/Headers and /usr/include
115INSTALL_MI_LIST	= ${DATAFILES}
116
117INSTALL_MI_GEN_LIST = syscall.h _posix_availability.h _symbol_aliasing.h
118
119INSTALL_MI_DIR = sys
120
121EXPORT_MI_LIST	= ${KERNELFILES} ${PRIVATE_KERNELFILES} linker_set.h bsdtask_info.h pthread_internal.h filedesc.h pipe.h resourcevar.h semaphore.h \
122								vnode_internal.h proc_internal.h file_internal.h mount_internal.h \
123								uio_internal.h tree.h
124
125EXPORT_MI_GEN_LIST = syscall.h sysproto.h
126
127EXPORT_MI_DIR = sys
128
129# /System/Library/Frameworks/System.framework/PrivateHeaders
130INSTALL_MI_LCL_LIST = ${DATAFILES} ${PRIVATE_DATAFILES}
131
132# /System/Library/Frameworks/Kernel.framework/PrivateHeaders
133INSTALL_KF_MI_LCL_LIST =  ${KERNELFILES} ${PRIVATE_KERNELFILES}
134
135INSTALL_KF_MI_LCL_GEN_LIST = sysproto.h
136
137# /System/Library/Frameworks/Kernel.framework/Headers
138INSTALL_KF_MI_LIST = ${KERNELFILES}
139
140INSTALL_KF_MI_GEN_LIST =
141
142MAKESYSCALLS = $(SRCROOT)/bsd/kern/makesyscalls.sh
143
144syscall.h: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS)
145	@echo "Generating bsd/sys/$@ from $<";
146	$(_v)$(MAKESYSCALLS) $< header > /dev/null
147
148sysproto.h: $(SRCROOT)/bsd/kern/syscalls.master $(MAKESYSCALLS)
149	@echo "Generating bsd/sys/$@ from $<";
150	$(_v)$(MAKESYSCALLS) $< proto > /dev/null
151
152MAKE_POSIX_AVAILABILITY = $(SRCROOT)/bsd/sys/make_posix_availability.sh
153_posix_availability.h: $(MAKE_POSIX_AVAILABILITY)
154	@echo "Generating bsd/sys/$@"
155	$(_v)$(MAKE_POSIX_AVAILABILITY) $@
156
157MAKE_SYMBOL_ALIASING = $(SRCROOT)/bsd/sys/make_symbol_aliasing.sh
158_symbol_aliasing.h: $(MAKE_SYMBOL_ALIASING)
159	@echo "Generating bsd/sys/$@"
160	$(_v)$(MAKE_SYMBOL_ALIASING) $@
161
162include $(MakeInc_rule)
163include $(MakeInc_dir)
164
165
166