xref: /xnu-12377.61.12/osfmk/vm/Makefile (revision 4d495c6e23c53686cf65f45067f79024cf5dcee8)
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
6include $(MakeInc_cmd)
7include $(MakeInc_def)
8
9DATAFILES =
10
11PRIVATE_DATAFILES = \
12	vm_compressor_info.h
13
14KERNELFILES = \
15	memory_types.h \
16	pmap.h \
17	lz4.h \
18	lz4_constants.h \
19	lz4_assembly_select.h \
20	vm_fault.h \
21	vm_kern.h \
22	vm_map.h \
23	vm_memtag.h \
24	vm_options.h \
25	vm_pageout.h \
26	vm_protos.h \
27	vm_far.h \
28	vm_shared_region.h \
29	vm_dyld_pager.h \
30	vm_compressor_algorithms.h \
31	WKdm_new.h
32
33PRIVATE_KERNELFILES = \
34	pmap_cs.h
35
36XNU_ONLY_EXPORTS = \
37	memory_object_xnu.h \
38	vm_compressor_algorithms_xnu.h \
39	vm_compressor_backing_store_xnu.h \
40	vm_compressor_xnu.h \
41	vm_fault_xnu.h \
42	vm_kern_xnu.h \
43	vm_map_xnu.h \
44	vm_memory_entry.h \
45	vm_memory_entry_xnu.h \
46	vm_object_xnu.h \
47	vm_page.h \
48	vm_pageout_xnu.h \
49	vm_purgeable_xnu.h \
50	vm_reclaim_xnu.h \
51	vm_shared_region_xnu.h \
52	vm_mteinfo_internal.h
53
54# Internal headers for the sake of bsd/vm/* and bsd/kern/kern_mman.c files only
55XNU_ONLY_EXPORTS += \
56	vm_compressor_backing_store_internal.h \
57	vm_compressor_internal.h \
58	vm_dyld_pager_internal.h \
59	vm_log.h \
60	vm_map_internal.h \
61	vm_protos_internal.h \
62	vm_sanitize_internal.h \
63	vm_sanitize_telemetry.h \
64	vm_shared_region_internal.h \
65	vm_lock_perf.h
66
67# Internal files exported with specific subsystems
68# who needs access to some VM internals.
69#
70# These headers must be included from C/C++ translation units,
71# never from other headers, and only by the named subsystems.
72XNU_ONLY_EXPORTS += \
73	vm_iokit.h \
74	vm_ubc.h \
75	vm_upl.h
76
77# /usr/include
78INSTALL_MI_LIST = ${DATAFILES}
79
80# /System/Library/Frameworks/System.framework/PrivateHeaders
81INSTALL_SF_MI_LCL_LIST = ${DATAFILES} ${PRIVATE_DATAFILES}
82
83# /System/Library/Frameworks/Kernel.framework/Headers
84INSTALL_KF_MI_LIST = ${KERNELFILES}
85
86# /System/Library/Frameworks/Kernel.framework/PrivateHeaders
87INSTALL_KF_MI_LCL_LIST = ${KERNELFILES} ${PRIVATE_KERNELFILES}
88
89INSTALL_MI_DIR = vm
90
91# Exported to rest of XNU for compilation
92EXPORT_MI_LIST = ${KERNELFILES} ${PRIVATE_KERNELFILES} ${XNU_ONLY_EXPORTS} ${PRIVATE_DATAFILES}
93
94EXPORT_MI_DIR = vm
95
96include $(MakeInc_rule)
97include $(MakeInc_dir)
98