xref: /xnu-8792.81.2/osfmk/conf/Makefile.template (revision 19c3b8c28c31cb8130e034cfb5df6bf9ba342d90)
1#
2# Mach Operating System
3# Copyright (c) 1986 Carnegie-Mellon University
4# All rights reserved.  The CMU software License Agreement specifies
5# the terms and conditions for use and redistribution.
6#
7
8export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd
9export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def
10export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule
11export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir
12
13include $(MakeInc_cmd)
14include $(MakeInc_def)
15
16#
17# XXX: CFLAGS
18#
19CFLAGS+= -include meta_features.h -DMACH_KERNEL_PRIVATE -DMACH_KERNEL
20SFLAGS+= -include meta_features.h
21
22ifeq ($(KSANCOV),1)
23# Don't instrument functions called by the ksancov runtime. SanitizeCoverage does
24# not support blacklists, so exclude the whole file.
25machine_routines.o_CFLAGS_RM = $(KCOV_CFLAGS)
26machine_routines_common.o_CFLAGS_RM = $(KCOV_CFLAGS)
27pcb_native.o_CFLAGS_RM = $(KCOV_CFLAGS)
28endif
29
30#
31# XXX: INCFLAGS to include libsa prototypes
32#
33INCFLAGS_MAKEFILE= -I$(SOURCE)libsa
34
35#
36# Directories for mig generated files
37#
38COMP_SUBDIRS = \
39	atm \
40	default_pager \
41	device \
42	mach \
43	UserNotification \
44	gssd \
45	kextd \
46	lockd
47
48#
49#  Make sure we don't remove this by accident if interrupted at the wrong
50#  time.
51#
52.PRECIOUS: Makefile
53
54#
55#  Theses macros are filled in by the config program depending on the
56#  current configuration.  The MACHDEP macro is replaced by the
57#  contents of the machine dependent makefile template and the others
58#  are replaced by the corresponding symbol definitions for the
59#  configuration.
60#
61
62%OBJS
63
64%LIBOBJS
65
66%CFILES
67
68%CXXFILES
69
70%SFILES
71
72%MACHDEP
73
74vm_tests.o_CFLAGS_ADD += -O0 -g
75
76#
77# Diagnostic opt-outs.  We need to make this list empty.
78#
79# DO NOT ADD MORE HERE.
80#
81# -Wno-format-nonliteral
82ktest_emit.o_CWARNFLAGS_ADD += -Wno-format-nonliteral
83# -Wno-atomic-implicit-seq-cst
84mp.o_CWARNFLAGS_ADD += -Wno-atomic-implicit-seq-cst
85pmCPU.o_CWARNFLAGS_ADD += -Wno-atomic-implicit-seq-cst
86pmap_pcid.o_CWARNFLAGS_ADD += -Wno-atomic-implicit-seq-cst
87xcpm_dvfs.o_CWARNFLAGS_ADD += -Wno-atomic-implicit-seq-cst
88xcpm_fi.o_CWARNFLAGS_ADD += -Wno-atomic-implicit-seq-cst
89xcpm_idle.o_CWARNFLAGS_ADD += -Wno-atomic-implicit-seq-cst
90# -Wno-cast-align
91bsd_i386.o_CWARNFLAGS_ADD += -Wno-cast-align
92ccdigest_final_64be.o_CWARNFLAGS_ADD += -Wno-cast-align
93ccdigest_init.o_CWARNFLAGS_ADD += -Wno-cast-align
94ccdigest_update.o_CWARNFLAGS_ADD += -Wno-cast-align
95cchmac_final.o_CWARNFLAGS_ADD += -Wno-cast-align
96cchmac_init.o_CWARNFLAGS_ADD += -Wno-cast-align
97commpage.o_CWARNFLAGS_ADD += -Wno-cast-align
98cpu_threads.o_CWARNFLAGS_ADD += -Wno-cast-align
99host.o_CWARNFLAGS_ADD += -Wno-cast-align
100kdp_machdep.o_CWARNFLAGS_ADD += -Wno-cast-align
101kdp_udp.o_CWARNFLAGS_ADD += -Wno-cast-align
102kdp_x86_common.o_CWARNFLAGS_ADD += -Wno-cast-align
103locks_i386.o_CWARNFLAGS_ADD += -Wno-cast-align
104machine_task.o_CWARNFLAGS_ADD += -Wno-cast-align
105model_dep.o_CWARNFLAGS_ADD += -Wno-cast-align
106mp_desc.o_CWARNFLAGS_ADD += -Wno-cast-align
107pcb.o_CWARNFLAGS_ADD += -Wno-cast-align
108pcb_native.o_CWARNFLAGS_ADD += -Wno-cast-align
109processor.o_CWARNFLAGS_ADD += -Wno-cast-align
110status.o_CWARNFLAGS_ADD += -Wno-cast-align
111task.o_CWARNFLAGS_ADD += -Wno-cast-align
112task_policy.o_CWARNFLAGS_ADD += -Wno-cast-align
113video_console.o_CWARNFLAGS_ADD += -Wno-cast-align
114# -Wno-implicit-int-conversion
115acpi.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
116commpage.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
117cpu.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
118cpu_threads.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
119kdebug_trigger.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
120kern_stackshot.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
121lapic_native.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
122loose_ends.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
123lz4.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
124model_dep.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
125mp.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
126mp_desc.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
127pcb.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
128pcb_native.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
129pmap_pcid.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
130pmap_x86_common.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
131sched_clutch.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
132trap.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
133uat.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
134video_console.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
135xcpm_dvfs.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
136xcpm_ioctl.o_CWARNFLAGS_ADD += -Wno-implicit-int-conversion
137# -Wno-shorten-64-to-32
138arm_vm_init.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
139backtrace.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
140btlog.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
141caches.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
142callstack.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
143clock.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
144clock_oldops.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
145iokit_rpc.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
146ipc_kmsg.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
147ipc_pset.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
148ipc_right.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
149kdp_core.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
150kdp_vm.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
151kern_cdata.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
152kern_stackshot.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
153loose_ends.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
154mach_msg.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
155machine_routines.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
156mk_timer.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
157model_dep.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
158pcb.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
159pmap.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
160processor_core.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
161rtclock.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
162status.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
163telemetry.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
164vm_init.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
165vm_kern.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
166vm_object.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
167vm_shared_region_pager.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
168vm_dyld_pager.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
169vm_swapfile_pager.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
170vm_user.o_CWARNFLAGS_ADD += -Wno-shorten-64-to-32
171# -Wno-sign-conversion
172Diagnostics.o_CWARNFLAGS_ADD += -Wno-sign-conversion
173acpi.o_CWARNFLAGS_ADD += -Wno-sign-conversion
174action.o_CWARNFLAGS_ADD += -Wno-sign-conversion
175affinity.o_CWARNFLAGS_ADD += -Wno-sign-conversion
176alternate_debugger.o_CWARNFLAGS_ADD += -Wno-sign-conversion
177arcade.o_CWARNFLAGS_ADD += -Wno-sign-conversion
178arm_init.o_CWARNFLAGS_ADD += -Wno-sign-conversion
179arm_timer.o_CWARNFLAGS_ADD += -Wno-sign-conversion
180arm_vm_init.o_CWARNFLAGS_ADD += -Wno-sign-conversion
181ast.o_CWARNFLAGS_ADD += -Wno-sign-conversion
182backtrace.o_CWARNFLAGS_ADD += -Wno-sign-conversion
183bank.o_CWARNFLAGS_ADD += -Wno-sign-conversion
184bitmap_test.o_CWARNFLAGS_ADD += -Wno-sign-conversion
185bsd_arm64.o_CWARNFLAGS_ADD += -Wno-sign-conversion
186bsd_i386.o_CWARNFLAGS_ADD += -Wno-sign-conversion
187bsd_i386_native.o_CWARNFLAGS_ADD += -Wno-sign-conversion
188bsd_kern.o_CWARNFLAGS_ADD += -Wno-sign-conversion
189bsd_vm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
190btlog.o_CWARNFLAGS_ADD += -Wno-sign-conversion
191caches.o_CWARNFLAGS_ADD += -Wno-sign-conversion
192callstack.o_CWARNFLAGS_ADD += -Wno-sign-conversion
193ccdrbg_nisthmac.o_CWARNFLAGS_ADD += -Wno-sign-conversion
194cchmac.o_CWARNFLAGS_ADD += -Wno-sign-conversion
195cchmac_final.o_CWARNFLAGS_ADD += -Wno-sign-conversion
196cchmac_init.o_CWARNFLAGS_ADD += -Wno-sign-conversion
197clock.o_CWARNFLAGS_ADD += -Wno-sign-conversion
198clock_oldops.o_CWARNFLAGS_ADD += -Wno-sign-conversion
199coalition.o_CWARNFLAGS_ADD += -Wno-sign-conversion
200commpage.o_CWARNFLAGS_ADD += -Wno-sign-conversion
201copyio.o_CWARNFLAGS_ADD += -Wno-sign-conversion
202corpse.o_CWARNFLAGS_ADD += -Wno-sign-conversion
203cpu.o_CWARNFLAGS_ADD += -Wno-sign-conversion
204cpu_common.o_CWARNFLAGS_ADD += -Wno-sign-conversion
205cpu_quiesce.o_CWARNFLAGS_ADD += -Wno-sign-conversion
206cpu_threads.o_CWARNFLAGS_ADD += -Wno-sign-conversion
207cpu_topology.o_CWARNFLAGS_ADD += -Wno-sign-conversion
208cpuid.o_CWARNFLAGS_ADD += -Wno-sign-conversion
209dbgwrap.o_CWARNFLAGS_ADD += -Wno-sign-conversion
210debug.o_CWARNFLAGS_ADD += -Wno-sign-conversion
211ecc_logging.o_CWARNFLAGS_ADD += -Wno-sign-conversion
212entropy.o_CWARNFLAGS_ADD += -Wno-sign-conversion
213exception.o_CWARNFLAGS_ADD += -Wno-sign-conversion
214fpu.o_CWARNFLAGS_ADD += -Wno-sign-conversion
215host.o_CWARNFLAGS_ADD += -Wno-sign-conversion
216host_notify.o_CWARNFLAGS_ADD += -Wno-sign-conversion
217hv.o_CWARNFLAGS_ADD += -Wno-sign-conversion
218i386_init.o_CWARNFLAGS_ADD += -Wno-sign-conversion
219i386_timer.o_CWARNFLAGS_ADD += -Wno-sign-conversion
220i386_vm_init.o_CWARNFLAGS_ADD += -Wno-sign-conversion
221iokit_rpc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
222ipc_eventlink.o_CWARNFLAGS_ADD += -Wno-sign-conversion
223ipc_host.o_CWARNFLAGS_ADD += -Wno-sign-conversion
224ipc_importance.o_CWARNFLAGS_ADD += -Wno-sign-conversion
225ipc_init.o_CWARNFLAGS_ADD += -Wno-sign-conversion
226ipc_kmsg.o_CWARNFLAGS_ADD += -Wno-sign-conversion
227ipc_kobject.o_CWARNFLAGS_ADD += -Wno-sign-conversion
228ipc_mqueue.o_CWARNFLAGS_ADD += -Wno-sign-conversion
229ipc_object.o_CWARNFLAGS_ADD += -Wno-sign-conversion
230ipc_port.o_CWARNFLAGS_ADD += -Wno-sign-conversion
231ipc_pset.o_CWARNFLAGS_ADD += -Wno-sign-conversion
232ipc_right.o_CWARNFLAGS_ADD += -Wno-sign-conversion
233ipc_space.o_CWARNFLAGS_ADD += -Wno-sign-conversion
234ipc_tt.o_CWARNFLAGS_ADD += -Wno-sign-conversion
235ipc_voucher.o_CWARNFLAGS_ADD += -Wno-sign-conversion
236kalloc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
237kdp.o_CWARNFLAGS_ADD += -Wno-sign-conversion
238kdp_core.o_CWARNFLAGS_ADD += -Wno-sign-conversion
239kdp_machdep.o_CWARNFLAGS_ADD += -Wno-sign-conversion
240kdp_serial.o_CWARNFLAGS_ADD += -Wno-sign-conversion
241kdp_vm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
242kern_monotonic.o_CWARNFLAGS_ADD += -Wno-sign-conversion
243kern_stackshot.o_CWARNFLAGS_ADD += -Wno-sign-conversion
244kernel_tests.o_CWARNFLAGS_ADD += -Wno-sign-conversion
245kext_alloc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
246kpc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
247kpc_arm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
248kpc_common.o_CWARNFLAGS_ADD += -Wno-sign-conversion
249kpc_x86.o_CWARNFLAGS_ADD += -Wno-sign-conversion
250kperf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
251kperf_kpc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
252kperf_mp.o_CWARNFLAGS_ADD += -Wno-sign-conversion
253kperf_timer.o_CWARNFLAGS_ADD += -Wno-sign-conversion
254kperfbsd.o_CWARNFLAGS_ADD += -Wno-sign-conversion
255ktest_emit.o_CWARNFLAGS_ADD += -Wno-sign-conversion
256lapic_native.o_CWARNFLAGS_ADD += -Wno-sign-conversion
257lazy.o_CWARNFLAGS_ADD += -Wno-sign-conversion
258ledger.o_CWARNFLAGS_ADD += -Wno-sign-conversion
259locks.o_CWARNFLAGS_ADD += -Wno-sign-conversion
260locks_arm.o_CWARNFLAGS_ADD += -Wno-sign-conversion
261locks_i386.o_CWARNFLAGS_ADD += -Wno-sign-conversion
262locks_i386_opt.o_CWARNFLAGS_ADD += -Wno-sign-conversion
263loose_ends.o_CWARNFLAGS_ADD += -Wno-sign-conversion
264lowmem_vectors.o_CWARNFLAGS_ADD += -Wno-sign-conversion
265lz4.o_CWARNFLAGS_ADD += -Wno-sign-conversion
266mach_debug.o_CWARNFLAGS_ADD += -Wno-sign-conversion
267mach_kernelrpc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
268mach_port.o_CWARNFLAGS_ADD += -Wno-sign-conversion
269machdep_call.o_CWARNFLAGS_ADD += -Wno-sign-conversion
270machine.o_CWARNFLAGS_ADD += -Wno-sign-conversion
271machine_check.o_CWARNFLAGS_ADD += -Wno-sign-conversion
272machine_remote_time.o_CWARNFLAGS_ADD += -Wno-sign-conversion
273machine_routines.o_CWARNFLAGS_ADD += -Wno-sign-conversion
274machine_routines_common.o_CWARNFLAGS_ADD += -Wno-sign-conversion
275machine_task.o_CWARNFLAGS_ADD += -Wno-sign-conversion
276meminfo.o_CWARNFLAGS_ADD += -Wno-sign-conversion
277memory_object.o_CWARNFLAGS_ADD += -Wno-sign-conversion
278mk_sp.o_CWARNFLAGS_ADD += -Wno-sign-conversion
279mk_timer.o_CWARNFLAGS_ADD += -Wno-sign-conversion
280model_dep.o_CWARNFLAGS_ADD += -Wno-sign-conversion
281monotonic_arm64.o_CWARNFLAGS_ADD += -Wno-sign-conversion
282monotonic_x86_64.o_CWARNFLAGS_ADD += -Wno-sign-conversion
283mp.o_CWARNFLAGS_ADD += -Wno-sign-conversion
284mp_desc.o_CWARNFLAGS_ADD += -Wno-sign-conversion
285mp_native.o_CWARNFLAGS_ADD += -Wno-sign-conversion
286mpsc_queue.o_CWARNFLAGS_ADD += -Wno-sign-conversion
287mtrr.o_CWARNFLAGS_ADD += -Wno-sign-conversion
288pal_routines.o_CWARNFLAGS_ADD += -Wno-sign-conversion
289pcb.o_CWARNFLAGS_ADD += -Wno-sign-conversion
290pcb_native.o_CWARNFLAGS_ADD += -Wno-sign-conversion
291pet.o_CWARNFLAGS_ADD += -Wno-sign-conversion
292platform_tests.o_CWARNFLAGS_ADD += -Wno-sign-conversion
293pmCPU.o_CWARNFLAGS_ADD += -Wno-sign-conversion
294pmap.o_CWARNFLAGS_ADD += -Wno-sign-conversion
295pmap_common.o_CWARNFLAGS_ADD += -Wno-sign-conversion
296pmap_pcid.o_CWARNFLAGS_ADD += -Wno-sign-conversion
297pmap_tests.o_CWARNFLAGS_ADD += -Wno-sign-conversion
298pmap_x86_common.o_CWARNFLAGS_ADD += -Wno-sign-conversion
299printf.o_CWARNFLAGS_ADD += -Wno-sign-conversion
300priority.o_CWARNFLAGS_ADD += -Wno-sign-conversion
301prng_random.o_CWARNFLAGS_ADD += -Wno-sign-conversion
302processor.o_CWARNFLAGS_ADD += -Wno-sign-conversion
303remote_time.o_CWARNFLAGS_ADD += -Wno-sign-conversion
304rtclock.o_CWARNFLAGS_ADD += -Wno-sign-conversion
305sart.o_CWARNFLAGS_ADD += -Wno-sign-conversion
306sched_amp.o_CWARNFLAGS_ADD += -Wno-sign-conversion
307sched_amp_common.o_CWARNFLAGS_ADD += -Wno-sign-conversion
308sched_average.o_CWARNFLAGS_ADD += -Wno-sign-conversion
309sched_clutch.o_CWARNFLAGS_ADD += -Wno-sign-conversion
310sched_dualq.o_CWARNFLAGS_ADD += -Wno-sign-conversion
311sched_multiq.o_CWARNFLAGS_ADD += -Wno-sign-conversion
312sched_prim.o_CWARNFLAGS_ADD += -Wno-sign-conversion
313sched_traditional.o_CWARNFLAGS_ADD += -Wno-sign-conversion
314serial_console.o_CWARNFLAGS_ADD += -Wno-sign-conversion
315serial_general.o_CWARNFLAGS_ADD += -Wno-sign-conversion
316sfi.o_CWARNFLAGS_ADD += -Wno-sign-conversion
317shart.o_CWARNFLAGS_ADD += -Wno-sign-conversion
318sleh.o_CWARNFLAGS_ADD += -Wno-sign-conversion
319stack.o_CWARNFLAGS_ADD += -Wno-sign-conversion
320startup.o_CWARNFLAGS_ADD += -Wno-sign-conversion
321status.o_CWARNFLAGS_ADD += -Wno-sign-conversion
322status_shared.o_CWARNFLAGS_ADD += -Wno-sign-conversion
323subrs.o_CWARNFLAGS_ADD += -Wno-sign-conversion
324sync_sema.o_CWARNFLAGS_ADD += -Wno-sign-conversion
325syscall_subr.o_CWARNFLAGS_ADD += -Wno-sign-conversion
326t8020dart.o_CWARNFLAGS_ADD += -Wno-sign-conversion
327task.o_CWARNFLAGS_ADD += -Wno-sign-conversion
328task_policy.o_CWARNFLAGS_ADD += -Wno-sign-conversion
329telemetry.o_CWARNFLAGS_ADD += -Wno-sign-conversion
330test_lock.o_CWARNFLAGS_ADD += -Wno-sign-conversion
331test_thread_call.o_CWARNFLAGS_ADD += -Wno-sign-conversion
332thread_call.o_CWARNFLAGS_ADD += -Wno-sign-conversion
333thread_group.o_CWARNFLAGS_ADD += -Wno-sign-conversion
334thread_policy.o_CWARNFLAGS_ADD += -Wno-sign-conversion
335timer_call.o_CWARNFLAGS_ADD += -Wno-sign-conversion
336trap.o_CWARNFLAGS_ADD += -Wno-sign-conversion
337trustcache.o_CWARNFLAGS_ADD += -Wno-sign-conversion
338turnstile.o_CWARNFLAGS_ADD += -Wno-sign-conversion
339uat.o_CWARNFLAGS_ADD += -Wno-sign-conversion
340ucode.o_CWARNFLAGS_ADD += -Wno-sign-conversion
341ux_handler.o_CWARNFLAGS_ADD += -Wno-sign-conversion
342vfp_state_test.o_CWARNFLAGS_ADD += -Wno-sign-conversion
343video_console.o_CWARNFLAGS_ADD += -Wno-sign-conversion
344video_scroll.o_CWARNFLAGS_ADD += -Wno-sign-conversion
345vm32_user.o_CWARNFLAGS_ADD += -Wno-sign-conversion
346vm_compressor.o_CWARNFLAGS_ADD += -Wno-sign-conversion
347vm_compressor_algorithms.o_CWARNFLAGS_ADD += -Wno-sign-conversion
348vm_compressor_backing_store.o_CWARNFLAGS_ADD += -Wno-sign-conversion
349vm_compressor_pager.o_CWARNFLAGS_ADD += -Wno-sign-conversion
350vm_fault.o_CWARNFLAGS_ADD += -Wno-sign-conversion
351vm_fourk_pager.o_CWARNFLAGS_ADD += -Wno-sign-conversion
352vm_kern.o_CWARNFLAGS_ADD += -Wno-sign-conversion
353vm_map.o_CWARNFLAGS_ADD += -Wno-sign-conversion
354vm_map_store_ll.o_CWARNFLAGS_ADD += -Wno-sign-conversion
355vm_map_store_rb.o_CWARNFLAGS_ADD += -Wno-sign-conversion
356vm_object.o_CWARNFLAGS_ADD += -Wno-sign-conversion
357vm_pageout.o_CWARNFLAGS_ADD += -Wno-sign-conversion
358vm_phantom_cache.o_CWARNFLAGS_ADD += -Wno-sign-conversion
359vm_purgeable.o_CWARNFLAGS_ADD += -Wno-sign-conversion
360vm_resident.o_CWARNFLAGS_ADD += -Wno-sign-conversion
361vm_shared_region.o_CWARNFLAGS_ADD += -Wno-sign-conversion
362vm_user.o_CWARNFLAGS_ADD += -Wno-sign-conversion
363vmx_cpu.o_CWARNFLAGS_ADD += -Wno-sign-conversion
364waitq.o_CWARNFLAGS_ADD += -Wno-sign-conversion
365work_interval.o_CWARNFLAGS_ADD += -Wno-sign-conversion
366xcpm_dvfs.o_CWARNFLAGS_ADD += -Wno-sign-conversion
367xcpm_fi.o_CWARNFLAGS_ADD += -Wno-sign-conversion
368xcpm_idle.o_CWARNFLAGS_ADD += -Wno-sign-conversion
369xcpm_ioctl.o_CWARNFLAGS_ADD += -Wno-sign-conversion
370# -Wno-xnu-typed-allocators
371kalloc.o_CWARNFLAGS_ADD += -Wno-xnu-typed-allocators
372
373# Rebuild if per-file overrides change
374${OBJS}: $(firstword $(MAKEFILE_LIST))
375
376# Rebuild if global compile flags change
377$(COBJS): .CFLAGS
378.CFLAGS: ALWAYS
379	$(_v)$(REPLACECONTENTS) $@ $(KCC) $(CFLAGS) $(INCFLAGS)
380$(CXXOBJS): .CXXFLAGS
381.CXXFLAGS: ALWAYS
382	$(_v)$(REPLACECONTENTS) $@ $(KC++) $(CXXFLAGS) $(INCFLAGS)
383$(SOBJS): .SFLAGS
384.SFLAGS: ALWAYS
385	$(_v)$(REPLACECONTENTS) $@ $(S_KCC) $(SFLAGS) $(INCFLAGS)
386
387$(COMPONENT).filelist: $(OBJS)
388	$(_v)for hib_file in ${HIB_FILES};		\
389	do	\
390                $(SEG_HACK) -n __HIB -o $${hib_file}__ $${hib_file} || exit 1; \
391                mv $${hib_file}__ $${hib_file} || exit 1; \
392	done
393	@$(LOG_LDFILELIST) "$(COMPONENT)"
394	$(_v)for obj in ${OBJS}; do	\
395		 $(ECHO) $(TARGET)/$(CURRENT_KERNEL_CONFIG)/$${obj}; \
396	done > $(COMPONENT).filelist
397
398$(COMPONENT).libfilelist: $(LIBOBJS)
399	@$(LOG_LDFILELIST) "lib$(COMPONENT)"
400	$(_v)for obj in ${LIBOBJS}; do	\
401		 $(ECHO) $(TARGET)/$(CURRENT_KERNEL_CONFIG)/$${obj}; \
402	done > $(COMPONENT).libfilelist
403
404ifeq ($(RC_ProjectName),xnu_libraries)
405do_all: $(COMPONENT).libfilelist
406else
407do_all: $(COMPONENT).filelist
408endif
409
410do_build_all:: do_all
411
412# genassym.o actually is an assembly file,
413# we name it genassym.o to help with the automatic
414# dependency generation
415
416GENASSYM_LOCATION = $(CURRENT_ARCH_CONFIG_LC)
417
418ifeq ($(CURRENT_ARCH_CONFIG_LC),x86_64)
419GENASSYM_LOCATION = i386
420else ifeq ($(CURRENT_ARCH_CONFIG_LC),x86_64h)
421GENASSYM_LOCATION = i386
422endif
423
424-include genassym.d
425genassym.o: .CFLAGS $(firstword $(MAKEFILE_LIST))
426genassym.o: $(SOURCE_DIR)/$(COMPONENT)/$(GENASSYM_LOCATION)/genassym.c
427	@$(LOG_GENASSYM) "$<"
428	$(_v)${GENASSYM_KCC} ${CFLAGS} ${CFLAGS_NOLTO_FLAG} -fno-integrated-as -MD -S -o ${@} ${INCFLAGS} $<
429
430assym.s: genassym.o
431	$(_v)sed -e '/^[[:space:]]*DEFINITION__define__/!d;{N;s/\n//;}' -e 's/^[[:space:]]*DEFINITION__define__\([^:]*\):.*ascii.*\"[\$$]*\([-0-9\#]*\)\".*$$/#define \1 \2/' -e 'p'  -e 's/#//2' -e 's/^[[:space:]]*#define \([A-Za-z0-9_]*\)[[:space:]]*[\$$#]*\([-0-9]*\).*$$/#define \1_NUM \2/' genassym.o > $@
432
433${SOBJS}: assym.s
434
435%RULES
436
437include $(MakeInc_rule)
438include $(MakeInc_dir)
439