xref: /xnu-10063.121.3/bsd/conf/Makefile.template (revision 2c2f96dc2b9a4408a43d3150ae9c105355ca3daa)
1#
2# Copyright (c) 2000-2020 Apple Inc. All rights reserved.
3#
4# @APPLE_LICENSE_HEADER_START@
5#
6# The contents of this file constitute Original Code as defined in and
7# are subject to the Apple Public Source License Version 1.1 (the
8# "License").  You may not use this file except in compliance with the
9# License.  Please obtain a copy of the License at
10# http://www.apple.com/publicsource and read it before using this file.
11#
12# This Original Code and all software distributed under the License are
13# distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14# EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15# INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16# FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
17# License for the specific language governing rights and limitations
18# under the License.
19#
20# @APPLE_LICENSE_HEADER_END@
21#
22
23#
24# Mach Operating System
25# Copyright (c) 1986 Carnegie-Mellon University
26# All rights reserved.  The CMU software License Agreement specifies
27# the terms and conditions for use and redistribution.
28#
29
30export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd
31export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def
32export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule
33export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir
34
35include $(MakeInc_cmd)
36include $(MakeInc_def)
37
38#
39# XXX: CFLAGS
40#
41CFLAGS+= -include meta_features.h -DDRIVER_PRIVATE \
42	-D_KERNEL_BUILD -DKERNEL_BUILD -DMACH_KERNEL -DBSD_BUILD \
43	-DBSD_KERNEL_PRIVATE \
44        -Warray-bounds-pointer-arithmetic
45SFLAGS+= -include meta_features.h
46
47#
48# Directories for mig generated files
49#
50COMP_SUBDIRS =
51
52#
53#  Make sure we don't remove this by accident if interrupted at the wrong
54#  time.
55#
56.PRECIOUS: Makefile
57
58#
59#  Theses macros are filled in by the config program depending on the
60#  current configuration.  The MACHDEP macro is replaced by the
61#  contents of the machine dependent makefile template and the others
62#  are replaced by the corresponding symbol definitions for the
63#  configuration.
64#
65
66%OBJS
67
68%LIBOBJS
69
70%CFILES
71
72%CXXFILES
73
74%SFILES
75
76%MACHDEP
77
78tcp_cubic.o_CWARNFLAGS_ADD += -Wno-error=implicit-int-float-conversion
79
80#
81# Diagnostic opt-outs.  We need to make this list empty.
82#
83# DO NOT ADD MORE HERE.
84#
85# -Wno-address-of-packed-member
86ah_core.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
87ah_input.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
88dlil.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
89esp_input.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
90esp_output.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
91frag6.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
92icmp6.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
93if_ipsec.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
94if_stf.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
95in6_cksum.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
96in6_gif.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
97ip6_forward.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
98ip6_input.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
99ip6_output.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
100ipsec.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
101iptap.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
102mld6.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
103mptcp_opt.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
104nd6.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
105nd6_nbr.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
106nd6_prproxy.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
107nd6_rtr.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
108necp.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
109packet_mangler.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
110pf_norm.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
111pktap.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
112raw_ip6.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
113tcp_input.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
114tcp_subr.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
115udp6_output.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
116udp6_usrreq.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
117udp_usrreq.o_CWARNFLAGS_ADD += -Wno-address-of-packed-member
118# -Wno-cast-align
119audit_bsm_token.o_CWARNFLAGS_ADD += -Wno-cast-align
120audit_pipe.o_CWARNFLAGS_ADD += -Wno-cast-align
121audit_session.o_CWARNFLAGS_ADD += -Wno-cast-align
122bind_vnops.o_CWARNFLAGS_ADD += -Wno-cast-align
123dtrace.o_CWARNFLAGS_ADD += -Wno-cast-align
124fasttrap.o_CWARNFLAGS_ADD += -Wno-cast-align
125fasttrap_isa.o_CWARNFLAGS_ADD += -Wno-cast-align
126fbt.o_CWARNFLAGS_ADD += -Wno-cast-align
127fbt_arm.o_CWARNFLAGS_ADD += -Wno-cast-align
128fbt_x86.o_CWARNFLAGS_ADD += -Wno-cast-align
129if_bond.o_CWARNFLAGS_ADD += -Wno-cast-align
130kern_credential.o_CWARNFLAGS_ADD += -Wno-cast-align
131kern_descrip.o_CWARNFLAGS_ADD += -Wno-cast-align
132kern_event.o_CWARNFLAGS_ADD += -Wno-cast-align
133kern_exec.o_CWARNFLAGS_ADD += -Wno-cast-align
134kern_guarded.o_CWARNFLAGS_ADD += -Wno-cast-align
135kern_lockf.o_CWARNFLAGS_ADD += -Wno-cast-align
136kern_subr.o_CWARNFLAGS_ADD += -Wno-cast-align
137km.o_CWARNFLAGS_ADD += -Wno-cast-align
138mach_loader.o_CWARNFLAGS_ADD += -Wno-cast-align
139memdev.o_CWARNFLAGS_ADD += -Wno-cast-align
140munge.o_CWARNFLAGS_ADD += -Wno-cast-align
141nfs_gss.o_CWARNFLAGS_ADD += -Wno-cast-align
142nfs_serv.o_CWARNFLAGS_ADD += -Wno-cast-align
143nfs_socket.o_CWARNFLAGS_ADD += -Wno-cast-align
144nfs_srvcache.o_CWARNFLAGS_ADD += -Wno-cast-align
145nfs_subs.o_CWARNFLAGS_ADD += -Wno-cast-align
146nfs_syscalls.o_CWARNFLAGS_ADD += -Wno-cast-align
147proc_info.o_CWARNFLAGS_ADD += -Wno-cast-align
148qsort.o_CWARNFLAGS_ADD += -Wno-cast-align
149sdt.o_CWARNFLAGS_ADD += -Wno-cast-align
150sdt_arm.o_CWARNFLAGS_ADD += -Wno-cast-align
151shadow.o_CWARNFLAGS_ADD += -Wno-cast-align
152spec_vnops.o_CWARNFLAGS_ADD += -Wno-cast-align
153subr_log.o_CWARNFLAGS_ADD += -Wno-cast-align
154sys_generic.o_CWARNFLAGS_ADD += -Wno-cast-align
155sys_pipe.o_CWARNFLAGS_ADD += -Wno-cast-align
156systemcalls.o_CWARNFLAGS_ADD += -Wno-cast-align
157systrace.o_CWARNFLAGS_ADD += -Wno-cast-align
158tty.o_CWARNFLAGS_ADD += -Wno-cast-align
159tty_compat.o_CWARNFLAGS_ADD += -Wno-cast-align
160tty_dev.o_CWARNFLAGS_ADD += -Wno-cast-align
161ubc_subr.o_CWARNFLAGS_ADD += -Wno-cast-align
162uipc_mbuf.o_CWARNFLAGS_ADD += -Wno-cast-align
163uipc_usrreq.o_CWARNFLAGS_ADD += -Wno-cast-align
164vfs_attrlist.o_CWARNFLAGS_ADD += -Wno-cast-align
165vfs_fsevents.o_CWARNFLAGS_ADD += -Wno-cast-align
166vfs_syscalls.o_CWARNFLAGS_ADD += -Wno-cast-align
167vfs_utfconv.o_CWARNFLAGS_ADD += -Wno-cast-align
168vfs_vnops.o_CWARNFLAGS_ADD += -Wno-cast-align
169vfs_xattr.o_CWARNFLAGS_ADD += -Wno-cast-align
170vn.o_CWARNFLAGS_ADD += -Wno-cast-align
171# -Wno-cast-qual
172dis_tables.o_CWARNFLAGS_ADD += -Wno-cast-qual
173# -Wno-format
174dlil.o_CWARNFLAGS_ADD += -Wno-format
175in_rmx.o_CWARNFLAGS_ADD += -Wno-format
176in6_rmx.o_CWARNFLAGS_ADD += -Wno-format
177route.o_CWARNFLAGS_ADD += -Wno-format
178# -Wno-format-extra-args
179dlil.o_CWARNFLAGS_ADD += -Wno-format-extra-args
180kpi_interface.o_CWARNFLAGS_ADD += -Wno-format-extra-args
181in_rmx.o_CWARNFLAGS_ADD += -Wno-format-extra-args
182in6_rmx.o_CWARNFLAGS_ADD += -Wno-format-extra-args
183route.o_CWARNFLAGS_ADD += -Wno-format-extra-args
184# -Wno-format-invalid-specifier
185dlil.o_CWARNFLAGS_ADD += -Wno-format-invalid-specifier
186in_rmx.o_CWARNFLAGS_ADD += -Wno-format-invalid-specifier
187in6_rmx.o_CWARNFLAGS_ADD += -Wno-format-invalid-specifier
188kpi_interface.o_CWARNFLAGS_ADD += -Wno-format-invalid-specifier
189route.o_CWARNFLAGS_ADD += -Wno-format-invalid-specifier
190# -Wno-implicit-int-conversion
191audit.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
192audit_bsm.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
193audit_bsm_errno.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
194audit_bsm_token.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
195audit_worker.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
196content_filter.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
197devfs_fdesc_support.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
198devfs_vnops.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
199dis_tables.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
200dtrace.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
201fasttrap.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
202fasttrap_isa.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
203fbt_arm.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
204flow_agg.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
205flowadv.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
206if_bond.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
207if_bridge.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
208if_fake.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
209if_stf.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
210if_utun.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
211if_vlan.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
212in6_gif.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
213in6_pcb.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
214in_gif.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
215km.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
216necp.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
217network_agent.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
218ntstat.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
219null_vnops.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
220pf.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
221pf_norm.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
222shadow.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
223skpc.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
224spec_vnops.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
225systemcalls.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
226systrace.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
227sysv_msg.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
228sysv_sem.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
229uipc_mbuf.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
230vfs_quota.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
231vsock_domain.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
232# -Wno-shorten-64-to-32
233audit_bsm.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
234audit_bsm_token.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
235audit_pipe.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
236audit_session.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
237audit_syscalls.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
238audit_worker.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
239bind_vnops.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
240devfs_fdesc_support.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
241devfs_tree.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
242devfs_vnops.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
243devtimer.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
244dis_tables.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
245doc_tombstone.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
246dtrace.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
247dtrace_ptss.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
248esp_chachapoly.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
249fasttrap.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
250fasttrap_isa.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
251if_bond.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
252if_bridge.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
253if_fake.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
254if_gif.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
255if_stf.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
256if_utun.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
257if_vlan.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
258in6_rmx.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
259in_rmx.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
260iptap.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
261kern_fork.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
262kern_malloc.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
263kern_overrides.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
264
265lockprof.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
266mem.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
267memdev.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
268nd6_rtr.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
269necp.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
270necp_client.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
271network_agent.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
272ntstat.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
273null_vnops.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
274pf.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
275pf_norm.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
276pf_pbuf.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
277profile_prvd.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
278profile_runtime.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
279sdt.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
280shadow.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
281skpc.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
282spec_vnops.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
283stubs.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
284systemcalls.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
285sysv_msg.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
286sysv_sem.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
287sysv_shm.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
288uipc_mbuf.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
289unix_signal.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
290ux_exception.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
291vfs_cluster.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
292vfs_quota.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
293vfs_subr.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
294vfs_support.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
295vn.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
296xcpm.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
297# -Wno-sign-compare
298dest6.o_CWARNFLAGS_ADD += -Wno-sign-compare
299dhcp_options.o_CWARNFLAGS_ADD += -Wno-sign-compare
300esp_chachapoly.o_CWARNFLAGS_ADD += -Wno-sign-compare
301frag6.o_CWARNFLAGS_ADD += -Wno-sign-compare
302in6.o_CWARNFLAGS_ADD += -Wno-sign-compare
303in6_cksum.o_CWARNFLAGS_ADD += -Wno-sign-compare
304in6_proto.o_CWARNFLAGS_ADD += -Wno-sign-compare
305radix.o_CWARNFLAGS_ADD += -Wno-sign-compare
306route6.o_CWARNFLAGS_ADD += -Wno-sign-compare
307scope6.o_CWARNFLAGS_ADD += -Wno-sign-compare
308uipc_mbuf.o_CWARNFLAGS_ADD += -Wno-sign-compare
309# -Wno-sign-conversion
310audit.o_CWARNFLAGS_ADD += -Wno-sign-conversion
311audit_arg.o_CWARNFLAGS_ADD += -Wno-sign-conversion
312audit_bsd.o_CWARNFLAGS_ADD += -Wno-sign-conversion
313audit_bsm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
314audit_bsm_klib.o_CWARNFLAGS_ADD += -Wno-sign-conversion
315audit_bsm_token.o_CWARNFLAGS_ADD += -Wno-sign-conversion
316audit_mac.o_CWARNFLAGS_ADD += -Wno-sign-conversion
317audit_pipe.o_CWARNFLAGS_ADD += -Wno-sign-conversion
318audit_session.o_CWARNFLAGS_ADD += -Wno-sign-conversion
319audit_syscalls.o_CWARNFLAGS_ADD += -Wno-sign-conversion
320audit_worker.o_CWARNFLAGS_ADD += -Wno-sign-conversion
321bind_vfsops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
322bind_vnops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
323blist.o_CWARNFLAGS_ADD += -Wno-sign-conversion
324bpf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
325bsd_init.o_CWARNFLAGS_ADD += -Wno-sign-conversion
326bsd_stubs.o_CWARNFLAGS_ADD += -Wno-sign-conversion
327cbrtf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
328chunklist.o_CWARNFLAGS_ADD += -Wno-sign-conversion
329content_filter.o_CWARNFLAGS_ADD += -Wno-sign-conversion
330cpu_in_cksum_gen.o_CWARNFLAGS_ADD += -Wno-sign-conversion
331cuckoo_hashtable_test.o_CWARNFLAGS_ADD += -Wno-sign-conversion
332decmpfs.o_CWARNFLAGS_ADD += -Wno-sign-conversion
333dest6.o_CWARNFLAGS_ADD += -Wno-sign-conversion
334devfs_fdesc_support.o_CWARNFLAGS_ADD += -Wno-sign-conversion
335devfs_tree.o_CWARNFLAGS_ADD += -Wno-sign-conversion
336devfs_vfsops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
337devfs_vnops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
338devtimer.o_CWARNFLAGS_ADD += -Wno-sign-conversion
339dhcp_options.o_CWARNFLAGS_ADD += -Wno-sign-conversion
340dis_tables.o_CWARNFLAGS_ADD += -Wno-sign-conversion
341disassembler.o_CWARNFLAGS_ADD += -Wno-sign-conversion
342doc_tombstone.o_CWARNFLAGS_ADD += -Wno-sign-conversion
343dtrace.o_CWARNFLAGS_ADD += -Wno-sign-conversion
344dtrace_glue.o_CWARNFLAGS_ADD += -Wno-sign-conversion
345dtrace_isa.o_CWARNFLAGS_ADD += -Wno-sign-conversion
346dtrace_ptss.o_CWARNFLAGS_ADD += -Wno-sign-conversion
347dtrace_subr.o_CWARNFLAGS_ADD += -Wno-sign-conversion
348dtrace_subr_arm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
349ether_if_module.o_CWARNFLAGS_ADD += -Wno-sign-conversion
350ether_inet6_pr_module.o_CWARNFLAGS_ADD += -Wno-sign-conversion
351ether_inet_pr_module.o_CWARNFLAGS_ADD += -Wno-sign-conversion
352fasttrap.o_CWARNFLAGS_ADD += -Wno-sign-conversion
353fasttrap_isa.o_CWARNFLAGS_ADD += -Wno-sign-conversion
354fbt.o_CWARNFLAGS_ADD += -Wno-sign-conversion
355fbt_arm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
356fbt_x86.o_CWARNFLAGS_ADD += -Wno-sign-conversion
357fifo_vnops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
358flowhash.o_CWARNFLAGS_ADD += -Wno-sign-conversion
359frag6.o_CWARNFLAGS_ADD += -Wno-sign-conversion
360if.o_CWARNFLAGS_ADD += -Wno-sign-conversion
361if_bond.o_CWARNFLAGS_ADD += -Wno-sign-conversion
362if_bridge.o_CWARNFLAGS_ADD += -Wno-sign-conversion
363if_fake.o_CWARNFLAGS_ADD += -Wno-sign-conversion
364if_gif.o_CWARNFLAGS_ADD += -Wno-sign-conversion
365if_ipsec.o_CWARNFLAGS_ADD += -Wno-sign-conversion
366if_llatbl.o_CWARNFLAGS_ADD += -Wno-sign-conversion
367if_loop.o_CWARNFLAGS_ADD += -Wno-sign-conversion
368if_low_power_mode.o_CWARNFLAGS_ADD += -Wno-sign-conversion
369if_pflog.o_CWARNFLAGS_ADD += -Wno-sign-conversion
370if_stf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
371if_utun.o_CWARNFLAGS_ADD += -Wno-sign-conversion
372if_vlan.o_CWARNFLAGS_ADD += -Wno-sign-conversion
373imageboot.o_CWARNFLAGS_ADD += -Wno-sign-conversion
374in6.o_CWARNFLAGS_ADD += -Wno-sign-conversion
375in6_cga.o_CWARNFLAGS_ADD += -Wno-sign-conversion
376in6_cksum.o_CWARNFLAGS_ADD += -Wno-sign-conversion
377in6_gif.o_CWARNFLAGS_ADD += -Wno-sign-conversion
378in6_pcb.o_CWARNFLAGS_ADD += -Wno-sign-conversion
379in6_proto.o_CWARNFLAGS_ADD += -Wno-sign-conversion
380in6_rmx.o_CWARNFLAGS_ADD += -Wno-sign-conversion
381in_gif.o_CWARNFLAGS_ADD += -Wno-sign-conversion
382in_rmx.o_CWARNFLAGS_ADD += -Wno-sign-conversion
383instr_size.o_CWARNFLAGS_ADD += -Wno-sign-conversion
384ip6_forward.o_CWARNFLAGS_ADD += -Wno-sign-conversion
385ip6_id.o_CWARNFLAGS_ADD += -Wno-sign-conversion
386iptap.o_CWARNFLAGS_ADD += -Wno-sign-conversion
387kern_acct.o_CWARNFLAGS_ADD += -Wno-sign-conversion
388kern_authorization.o_CWARNFLAGS_ADD += -Wno-sign-conversion
389kern_clock.o_CWARNFLAGS_ADD += -Wno-sign-conversion
390kern_control.o_CWARNFLAGS_ADD += -Wno-sign-conversion
391kern_core.o_CWARNFLAGS_ADD += -Wno-sign-conversion
392kern_credential.o_CWARNFLAGS_ADD += -Wno-sign-conversion
393kern_cs.o_CWARNFLAGS_ADD += -Wno-sign-conversion
394kern_descrip.o_CWARNFLAGS_ADD += -Wno-sign-conversion
395kern_event.o_CWARNFLAGS_ADD += -Wno-sign-conversion
396kern_exit.o_CWARNFLAGS_ADD += -Wno-sign-conversion
397kern_fork.o_CWARNFLAGS_ADD += -Wno-sign-conversion
398kern_guarded.o_CWARNFLAGS_ADD += -Wno-sign-conversion
399kern_kpc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
400kern_lockf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
401kern_malloc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
402kern_memorystatus.o_CWARNFLAGS_ADD += -Wno-sign-conversion
403kern_memorystatus_freeze.o_CWARNFLAGS_ADD += -Wno-sign-conversion
404kern_memorystatus_notify.o_CWARNFLAGS_ADD += -Wno-sign-conversion
405kern_mib.o_CWARNFLAGS_ADD += -Wno-sign-conversion
406kern_mman.o_CWARNFLAGS_ADD += -Wno-sign-conversion
407kern_ntptime.o_CWARNFLAGS_ADD += -Wno-sign-conversion
408kern_overrides.o_CWARNFLAGS_ADD += -Wno-sign-conversion
409kern_persona.o_CWARNFLAGS_ADD += -Wno-sign-conversion
410kern_physio.o_CWARNFLAGS_ADD += -Wno-sign-conversion
411kern_proc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
412kern_prot.o_CWARNFLAGS_ADD += -Wno-sign-conversion
413kern_resource.o_CWARNFLAGS_ADD += -Wno-sign-conversion
414kern_shutdown.o_CWARNFLAGS_ADD += -Wno-sign-conversion
415kern_sig.o_CWARNFLAGS_ADD += -Wno-sign-conversion
416kern_subr.o_CWARNFLAGS_ADD += -Wno-sign-conversion
417kern_symfile.o_CWARNFLAGS_ADD += -Wno-sign-conversion
418kern_synch.o_CWARNFLAGS_ADD += -Wno-sign-conversion
419kern_time.o_CWARNFLAGS_ADD += -Wno-sign-conversion
420km.o_CWARNFLAGS_ADD += -Wno-sign-conversion
421kpi_mbuf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
422kpi_protocol.o_CWARNFLAGS_ADD += -Wno-sign-conversion
423kpi_socketfilter.o_CWARNFLAGS_ADD += -Wno-sign-conversion
424kpi_vfs.o_CWARNFLAGS_ADD += -Wno-sign-conversion
425lockprof.o_CWARNFLAGS_ADD += -Wno-sign-conversion
426mach_loader.o_CWARNFLAGS_ADD += -Wno-sign-conversion
427mach_process.o_CWARNFLAGS_ADD += -Wno-sign-conversion
428mem.o_CWARNFLAGS_ADD += -Wno-sign-conversion
429memdev.o_CWARNFLAGS_ADD += -Wno-sign-conversion
430monotonic.o_CWARNFLAGS_ADD += -Wno-sign-conversion
431munge.o_CWARNFLAGS_ADD += -Wno-sign-conversion
432nd6_prproxy.o_CWARNFLAGS_ADD += -Wno-sign-conversion
433nd6_send.o_CWARNFLAGS_ADD += -Wno-sign-conversion
434necp.o_CWARNFLAGS_ADD += -Wno-sign-conversion
435necp_client.o_CWARNFLAGS_ADD += -Wno-sign-conversion
436netboot.o_CWARNFLAGS_ADD += -Wno-sign-conversion
437network_agent.o_CWARNFLAGS_ADD += -Wno-sign-conversion
438ntstat.o_CWARNFLAGS_ADD += -Wno-sign-conversion
439null_vfsops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
440null_vnops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
441packet_mangler.o_CWARNFLAGS_ADD += -Wno-sign-conversion
442pf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
443pf_norm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
444pf_pbuf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
445pf_table.o_CWARNFLAGS_ADD += -Wno-sign-conversion
446posix_sem.o_CWARNFLAGS_ADD += -Wno-sign-conversion
447posix_shm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
448process_policy.o_CWARNFLAGS_ADD += -Wno-sign-conversion
449profile_prvd.o_CWARNFLAGS_ADD += -Wno-sign-conversion
450profile_runtime.o_CWARNFLAGS_ADD += -Wno-sign-conversion
451radix.o_CWARNFLAGS_ADD += -Wno-sign-conversion
452randomdev.o_CWARNFLAGS_ADD += -Wno-sign-conversion
453route6.o_CWARNFLAGS_ADD += -Wno-sign-conversion
454routefs_ops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
455scope6.o_CWARNFLAGS_ADD += -Wno-sign-conversion
456sdt.o_CWARNFLAGS_ADD += -Wno-sign-conversion
457sdt_arm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
458sdt_x86.o_CWARNFLAGS_ADD += -Wno-sign-conversion
459shadow.o_CWARNFLAGS_ADD += -Wno-sign-conversion
460spec_vnops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
461subr_log.o_CWARNFLAGS_ADD += -Wno-sign-conversion
462subr_prf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
463sys_coalition.o_CWARNFLAGS_ADD += -Wno-sign-conversion
464sys_generic.o_CWARNFLAGS_ADD += -Wno-sign-conversion
465sys_pipe.o_CWARNFLAGS_ADD += -Wno-sign-conversion
466sys_reason.o_CWARNFLAGS_ADD += -Wno-sign-conversion
467sys_ulock.o_CWARNFLAGS_ADD += -Wno-sign-conversion
468systemcalls.o_CWARNFLAGS_ADD += -Wno-sign-conversion
469systrace.o_CWARNFLAGS_ADD += -Wno-sign-conversion
470sysv_msg.o_CWARNFLAGS_ADD += -Wno-sign-conversion
471sysv_sem.o_CWARNFLAGS_ADD += -Wno-sign-conversion
472sysv_shm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
473tcp_cc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
474tcp_cubic.o_CWARNFLAGS_ADD += -Wno-sign-conversion
475ubc_subr.o_CWARNFLAGS_ADD += -Wno-sign-conversion
476uipc_mbuf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
477unix_signal.o_CWARNFLAGS_ADD += -Wno-sign-conversion
478unix_startup.o_CWARNFLAGS_ADD += -Wno-sign-conversion
479ux_exception.o_CWARNFLAGS_ADD += -Wno-sign-conversion
480vfs_attrlist.o_CWARNFLAGS_ADD += -Wno-sign-conversion
481vfs_bio.o_CWARNFLAGS_ADD += -Wno-sign-conversion
482vfs_cache.o_CWARNFLAGS_ADD += -Wno-sign-conversion
483vfs_cluster.o_CWARNFLAGS_ADD += -Wno-sign-conversion
484vfs_cprotect.o_CWARNFLAGS_ADD += -Wno-sign-conversion
485vfs_disk_conditioner.o_CWARNFLAGS_ADD += -Wno-sign-conversion
486vfs_fsevents.o_CWARNFLAGS_ADD += -Wno-sign-conversion
487vfs_fslog.o_CWARNFLAGS_ADD += -Wno-sign-conversion
488vfs_init.o_CWARNFLAGS_ADD += -Wno-sign-conversion
489vfs_lookup.o_CWARNFLAGS_ADD += -Wno-sign-conversion
490vfs_quota.o_CWARNFLAGS_ADD += -Wno-sign-conversion
491vfs_subr.o_CWARNFLAGS_ADD += -Wno-sign-conversion
492vfs_syscalls.o_CWARNFLAGS_ADD += -Wno-sign-conversion
493vfs_utfconv.o_CWARNFLAGS_ADD += -Wno-sign-conversion
494vfs_vnops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
495vfs_xattr.o_CWARNFLAGS_ADD += -Wno-sign-conversion
496vm_compressor_backing_file.o_CWARNFLAGS_ADD += -Wno-sign-conversion
497vm_unix.o_CWARNFLAGS_ADD += -Wno-sign-conversion
498vn.o_CWARNFLAGS_ADD += -Wno-sign-conversion
499vnode_pager.o_CWARNFLAGS_ADD += -Wno-sign-conversion
500# -Wconditional-uninitialized
501doc_tombstone.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
502kpi_vfs.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
503vfs_attrlist.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
504vfs_bio.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
505vfs_cache.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
506vfs_cluster.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
507vfs_conf.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
508vfs_cprotect.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
509vfs_disk_conditioner.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
510vfs_fsevents.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
511vfs_fslog.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
512vfs_init.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
513vfs_io_compression_stats.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
514vfs_lookup.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
515vfs_quota.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
516vfs_subr.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
517vfs_support.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
518vfs_syscalls.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
519vfs_unicode.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
520vfs_utfconf.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
521vfs_vnops.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
522vfs_xattr.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
523vnode_if.o_CWARNFLAGS_ADD += -Wconditional-uninitialized
524# -Wxnu-typed-allocators
525kern_malloc.o_CWARNFLAGS_ADD += -Wno-xnu-typed-allocators
526
527#
528# Machine-independent per-file flags
529#
530
531#
532# This rule insures that the subr_prof.c does NOT get compiled with
533# profiling. It implements mcount() and profiling it leads to recursion.
534#
535
536subr_prof.o_CFLAGS_RM = -pg
537
538# Rebuild if per-file overrides change
539${OBJS}: $(firstword $(MAKEFILE_LIST))
540
541# Rebuild if global compile flags change
542$(COBJS): .CFLAGS
543.CFLAGS: ALWAYS
544	$(_v)$(REPLACECONTENTS) $@ $(KCC) $(CFLAGS) $(INCFLAGS)
545$(CXXOBJS): .CXXFLAGS
546.CXXFLAGS: ALWAYS
547	$(_v)$(REPLACECONTENTS) $@ $(KC++) $(CXXFLAGS) $(INCFLAGS)
548$(SOBJS): .SFLAGS
549.SFLAGS: ALWAYS
550	$(_v)$(REPLACECONTENTS) $@ $(S_KCC) $(SFLAGS) $(INCFLAGS)
551
552$(COMPONENT).filelist: $(OBJS)
553	@$(LOG_LDFILELIST) $(COMPONENT)
554	$(_v)for obj in ${OBJS}; do	\
555		 $(ECHO) $(TARGET)/$(CURRENT_KERNEL_CONFIG)/$${obj}; \
556	done > $(COMPONENT).filelist
557
558$(COMPONENT).libfilelist: $(LIBOBJS)
559	@$(LOG_LDFILELIST) "lib$(COMPONENT)"
560	$(_v)for obj in ${LIBOBJS}; do	\
561		 $(ECHO) $(TARGET)/$(CURRENT_KERNEL_CONFIG)/$${obj}; \
562	done > $(COMPONENT).libfilelist
563
564MAKESYSCALLS = $(SRCROOT)/bsd/kern/makesyscalls.sh
565
566init_sysent.c: $(TARGET)/bsd.syscalls.master
567	@$(LOG_GENERATE) "$@$(Color0) from $(ColorF)$(<F)$(Color0)"
568	$(_v)$(MAKESYSCALLS) $< table > /dev/null
569
570syscalls.c: $(TARGET)/bsd.syscalls.master
571	@$(LOG_GENERATE) "$@$(Color0) from $(ColorF)$(<F)$(Color0)"
572	$(_v)$(MAKESYSCALLS) $< names > /dev/null
573
574audit_kevents.c: $(TARGET)/bsd.syscalls.master
575	@$(LOG_GENERATE) "$@$(Color0) from $(ColorF)$(<F)$(Color0)"
576	$(_v)$(MAKESYSCALLS) $< audit > /dev/null
577
578systrace_args.c: $(TARGET)/bsd.syscalls.master
579	@$(LOG_GENERATE) "$@$(Color0) from $(ColorF)$(<F)$(Color0)"
580	$(_v)$(MAKESYSCALLS) $< systrace > /dev/null
581
582ifeq ($(RC_ProjectName),xnu_libraries)
583do_all: $(COMPONENT).libfilelist
584else
585do_all: $(COMPONENT).filelist
586endif
587
588do_build_all:: do_all
589
590%RULES
591
592include $(MakeInc_rule)
593include $(MakeInc_dir)
594