xref: /xnu-11215.81.4/osfmk/arm/Makefile (revision d4514f0bc1d3f944c22d92e68b646ac3fb40d452)
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
9ARM_HEADER_FILES =	\
10		arch.h \
11		atomic.h \
12		cpu_number.h \
13		cpu_capabilities.h	\
14		cpu_capabilities_public.h	\
15		cpu_x86_64_capabilities.h	\
16		cpuid.h \
17		cpuid_internal.h \
18		lock.h \
19		locks.h \
20		machine_cpuid.h \
21		machine_routines.h \
22		memory_types.h \
23		pal_routines.h \
24		simple_lock.h \
25		thread.h \
26		trap.h
27
28INSTALL_MD_DIR = arm
29
30# Headers installed into System.framework/PrivateHeaders (internal SDK only).
31INSTALL_SF_MD_LCL_LIST = arch.h cpu_capabilities.h
32
33# Headers installed into /usr/include (public and internal SDKs).
34# These are covered by ../../bsd/machine/machine.modulemap.
35INSTALL_MD_LIST = \
36		arch.h \
37		cpu_capabilities_public.h
38
39# Headers installed into /usr/local/include (internal SDK only).
40# These are covered by ../../bsd/machine/machine_private.modulemap.
41INSTALL_MD_LCL_LIST = cpu_capabilities.h
42
43# Headers installed in the public/internal SDKs for userspace DriverKit drivers.
44INSTALL_DRIVERKIT_MD_LIST = arch.h
45
46# Headers installed into Kernel.framework/Headers (public and internal SDKs).
47INSTALL_KF_MD_LIST = $(ARM_HEADER_FILES)
48
49# Headers installed into Kernel.framework/PrivateHeaders (internal SDK only).
50INSTALL_KF_MD_LCL_LIST = \
51		cpu_topology.h \
52		dbgwrap.h \
53		machine_kpc.h \
54		pmap_public.h \
55		proc_reg.h \
56		smp.h \
57		$(ARM_HEADER_FILES)
58
59# TODO: consolidate INSTALL_KF_MD_LCL_LIST and EXPORT_MD_LIST? Only difference is caches_internal.h/machine_cpu.h
60# Headers used to compile xnu
61EXPORT_MD_LIST = \
62		caches_internal.h \
63		cpu_topology.h \
64		dbgwrap.h \
65		machine_cpu.h \
66		machine_kpc.h \
67		pmap_public.h \
68		proc_reg.h \
69		smp.h \
70		$(ARM_HEADER_FILES)
71
72# These headers will be available with #include <arm/header_file.h>
73EXPORT_MD_DIR = arm
74
75include $(MakeInc_rule)
76include $(MakeInc_dir)
77