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