xref: /xnu-10002.81.5/bsd/machine/Makefile (revision 5e3eaea39dcf651e66cb99ba7d70e32cc4a99587)
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
9# Files that are public on macOS, but private on embedded
10EMBEDDED_PRIVATE_DATAFILES = \
11	_limits.h
12
13ifeq ($(filter $(SUPPORTED_EMBEDDED_PLATFORMS) $(SUPPORTED_SIMULATOR_PLATFORMS),$(PLATFORM)),)
14EXTRA_DATAFILES = $(EMBEDDED_PRIVATE_DATAFILES)
15else
16EXTRA_PRIVATE_DATAFILES = $(EMBEDDED_PRIVATE_DATAFILES)
17endif
18
19DATAFILES = $(sort \
20	byte_order.h  endian.h fasttrap_isa.h \
21	limits.h param.h  profile.h \
22	signal.h  types.h \
23	vmparam.h _types.h _param.h \
24	_mcontext.h \
25	$(EXTRA_DATAFILES))
26
27# machine.modulemap additionally includes the headers from ../{i386,arm} and
28# ../../osfmk/{i386,arm}.
29MODULEMAPFILES = \
30	machine.modulemap
31
32DRIVERKIT_DATAFILES = \
33	limits.h types.h _types.h endian.h
34
35PRIVATE_DATAFILES = $(sort \
36	disklabel.h \
37	$(EXTRA_PRIVATE_DATAFILES))
38
39# machine_private.modulemap additionally includes the headers from ../../osfmk/{machine,i386,arm}.
40PRIVATE_MODULEMAPFILES = \
41	machine_private.modulemap
42
43KERNELFILES = \
44	disklabel.h \
45	byte_order.h  endian.h \
46	limits.h param.h   profile.h \
47	signal.h types.h \
48	vmparam.h _types.h _limits.h _param.h \
49	_mcontext.h
50
51INSTALL_MI_LIST = ${DATAFILES}
52INSTALL_MODULEMAP_MI_LIST = ${MODULEMAPFILES}
53INSTALL_DRIVERKIT_MI_LIST = ${DRIVERKIT_DATAFILES}
54INSTALL_MI_LCL_LIST = ${EXTRA_PRIVATE_DATAFILES}
55INSTALL_MODULEMAP_MI_LCL_LIST = ${PRIVATE_MODULEMAPFILES}
56INSTALL_SF_MI_LCL_LIST = ${DATAFILES} ${PRIVATE_DATAFILES}
57
58INSTALL_MI_DIR = machine
59
60EXPORT_MI_LIST = ${KERNELFILES}
61
62EXPORT_MI_DIR = machine
63
64include $(MakeInc_rule)
65include $(MakeInc_dir)
66