]> git.saurik.com Git - apple/xnu.git/blame_incremental - iokit/conf/Makefile.template
xnu-7195.60.75.tar.gz
[apple/xnu.git] / iokit / conf / Makefile.template
... / ...
CommitLineData
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 -DDRIVER_PRIVATE \
20 -DIOKIT_KERNEL_PRIVATE -DDRIVERKIT_PRIVATE=1 -DIOMATCHDEBUG=1 -DIOALLOCDEBUG=1
21SFLAGS+= -include meta_features.h
22#-DIOKITDEBUG=-1
23
24CFLAGS_RELEASE += -DIOASSERT=0
25CFLAGS_DEVELOPMENT += -DIOASSERT=1
26CFLAGS_DEBUG += -DIOASSERT=1
27
28#
29# Directories for generated files
30#
31COMP_SUBDIRS = \
32 DriverKit
33
34#
35# Make sure we don't remove this by accident if interrupted at the wrong
36# time.
37#
38.PRECIOUS: Makefile
39
40#
41# Theses macros are filled in by the config program depending on the
42# current configuration. The MACHDEP macro is replaced by the
43# contents of the machine dependent makefile template and the others
44# are replaced by the corresponding symbol definitions for the
45# configuration.
46#
47
48%OBJS
49
50%CFILES
51
52%CXXFILES
53
54%SFILES
55
56%MACHDEP
57
58#
59# Diagnostic opt-outs. We need to make this list empty.
60#
61# DO NOT ADD MORE HERE.
62#
63# -Wno-cast-align
64IODataQueue.cpo_CXXWARNFLAGS_ADD += -Wno-cast-align
65IOHibernateIO.cpo_CXXWARNFLAGS_ADD += -Wno-cast-align
66IOHibernateRestoreKernel.o_CFLAGS_ADD += -Wno-cast-align
67IONVRAM.cpo_CXXWARNFLAGS_ADD += -Wno-cast-align
68IOSharedDataQueue.cpo_CXXWARNFLAGS_ADD += -Wno-cast-align
69IOUserClient.cpo_CXXWARNFLAGS_ADD += -Wno-cast-align
70# -Wno-cast-qual
71DINetBootHook.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
72IOCatalogue.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
73IODMAController.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
74IODataQueue.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
75IODeviceTreeSupport.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
76IOHibernateIO.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
77IOInterruptController.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
78IOKitBSDInit.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
79IOKitDebug.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
80IOLib.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
81IOLocks.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
82IOMapper.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
83IOMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
84IONVRAM.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
85IOPMrootDomain.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
86IOPlatformExpert.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
87IOPolledInterface.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
88IORegistryEntry.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
89IOService.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
90IOServicePM.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
91IOSharedDataQueue.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
92IOSimpleReporter.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
93IOSkywalkSupport.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
94IOStateReporter.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
95IOUserClient.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
96IOUserServer.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
97RootDomainUserClient.cpo_CXXWARNFLAGS_ADD += -Wno-cast-qual
98# -Wno-missing-prototypes
99IOKitBSDInit.cpo_CXXWARNFLAGS_ADD += -Wno-missing-prototypes
100IOKitDebug.cpo_CXXWARNFLAGS_ADD += -Wno-missing-prototypes
101IOPMrootDomain.cpo_CXXWARNFLAGS_ADD += -Wno-missing-prototypes
102IOUserClient.cpo_CXXWARNFLAGS_ADD += -Wno-missing-prototypes
103# -Wno-shadow
104IOHibernateIO.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
105IOKitDebug.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
106IOMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
107IOMultiMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
108IOPMrootDomain.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
109IOPolledInterface.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
110IOService.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
111IOServicePM.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
112IOSharedDataQueue.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
113IOTimerEventSource.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
114IOUserServer.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
115TestIOMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
116Tests.cpo_CXXWARNFLAGS_ADD += -Wno-shadow
117# -Wno-shadow-field-in-constructor
118IOUserServer.cpo_CXXWARNFLAGS_ADD += -Wno-shadow-field-in-constructor
119# -Wno-sign-conversion
120DINetBootHook.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
121IOBufferMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
122IOCPU.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
123IOCatalogue.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
124IOCommandQueue.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
125IODMACommand.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
126IODMAEventSource.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
127IODeviceTreeSupport.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
128IOFilterInterruptEventSource.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
129IOHibernateIO.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
130IOHibernateRestoreKernel.o_CFLAGS_ADD += -Wno-sign-conversion
131IOHistogramReporter.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
132IOInterleavedMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
133IOInterruptAccounting.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
134IOInterruptController.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
135IOInterruptEventSource.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
136IOKitBSDInit.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
137IOKitDebug.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
138IOLib.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
139IOMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
140IOMultiMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
141IONVRAM.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
142IOPMPowerSource.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
143IOPMrootDomain.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
144IOPlatformActions.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
145IOPlatformExpert.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
146IOPolledInterface.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
147IORTC.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
148IORegistryEntry.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
149IOService.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
150IOServicePM.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
151IOSkywalkSupport.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
152IOStartIOKit.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
153IOStatistics.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
154IOStringFuncs.o_CFLAGS_ADD += -Wno-sign-conversion
155IOTimerEventSource.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
156IOUserClient.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
157IOUserServer.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
158IOWorkLoop.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
159RootDomainUserClient.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
160TestIOMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-sign-conversion
161# -Wno-unused-parameter
162IOBufferMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
163IOCatalogue.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
164IOCommandGate.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
165IODMACommand.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
166IODeviceTreeSupport.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
167IOFilterInterruptEventSource.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
168IOHibernateIO.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
169IOHibernateRestoreKernel.o_CFLAGS_ADD += -Wno-unused-parameter
170IOInterruptController.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
171IOInterruptEventSource.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
172IOKitBSDInit.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
173IOKitDebug.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
174IOLib.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
175IOLocks.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
176IOMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
177IOMultiMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
178IONVRAM.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
179IOPMrootDomain.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
180IOPerfControl.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
181IOPlatformExpert.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
182IOPolledInterface.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
183IORTC.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
184IORegistryEntry.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
185IOReporter.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
186IOService.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
187IOServicePM.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
188IOSkywalkSupport.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
189IOStateReporter.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
190IOUserClient.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
191IOUserServer.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
192IOWatchDogTimer.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
193IOWorkLoop.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
194PassthruInterruptController.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
195RootDomainUserClient.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
196TestIOMemoryDescriptor.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
197Tests.cpo_CXXWARNFLAGS_ADD += -Wno-unused-parameter
198IODMACommand.iig.cpo_CXXWARNFLAGS_ADD += -Wno-duplicate-decl-specifier
199
200# Rebuild if per-file overrides change
201${OBJS}: $(firstword $(MAKEFILE_LIST))
202
203# Rebuild if global compile flags change
204$(COBJS): .CFLAGS
205.CFLAGS: ALWAYS
206 $(_v)$(REPLACECONTENTS) $@ $(KCC) $(CFLAGS) $(INCFLAGS)
207$(CXXOBJS): .CXXFLAGS
208.CXXFLAGS: ALWAYS
209 $(_v)$(REPLACECONTENTS) $@ $(KC++) $(CXXFLAGS) $(INCFLAGS)
210$(SOBJS): .SFLAGS
211.SFLAGS: ALWAYS
212 $(_v)$(REPLACECONTENTS) $@ $(S_KCC) $(SFLAGS) $(INCFLAGS)
213
214$(COMPONENT).filelist: $(OBJS)
215 $(_v)for hib_file in ${HIB_FILES}; \
216 do \
217 $(SEG_HACK) -n __HIB -o $${hib_file}__ $${hib_file} || exit 1; \
218 mv $${hib_file}__ $${hib_file} || exit 1; \
219 done
220 @$(LOG_LDFILELIST) "$(COMPONENT)"
221 $(_v)for obj in ${OBJS}; do \
222 $(ECHO) $(TARGET)/$(CURRENT_KERNEL_CONFIG)/$${obj}; \
223 done > $(COMPONENT).filelist
224
225do_all: $(COMPONENT).filelist
226
227do_build_all:: do_all
228
229%RULES
230
231include $(MakeInc_rule)
232include $(MakeInc_dir)