xref: /illumos-gate/usr/src/uts/intel/Makefile.rules (revision 24da5b34f49324ed742a340010ed5bd3d4e06625)
1#
2# CDDL HEADER START
3#
4# The contents of this file are subject to the terms of the
5# Common Development and Distribution License (the "License").
6# You may not use this file except in compliance with the License.
7#
8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9# or http://www.opensolaris.org/os/licensing.
10# See the License for the specific language governing permissions
11# and limitations under the License.
12#
13# When distributing Covered Code, include this CDDL HEADER in each
14# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15# If applicable, add the following below this CDDL HEADER, with the
16# fields enclosed by brackets "[]" replaced with your own identifying
17# information: Portions Copyright [yyyy] [name of copyright owner]
18#
19# CDDL HEADER END
20#
21#
22# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
23# Use is subject to license terms.
24#
25# ident	"%Z%%M%	%I%	%E% SMI"
26#
27#	This Makefile defines all file modules and build rules for the
28# directory uts/intel and its children. These are the source files which
29# are specific to the intel processor.
30#
31#	The following two-level ordering must be maintained in this file.
32#	  Lines are sorted first in order of decreasing specificity based on
33#	  the first directory component.  That is, sun4u rules come before
34#	  sparc rules come before common rules.
35#
36#	  Lines whose initial directory components are equal are sorted
37#	  alphabetically by the remaining components.
38
39#
40# Need a way to distinguish between the ia32 and amd64 subdirs.
41#
42SUBARCH_DIR_32 = ia32
43SUBARCH_DIR_64 = amd64
44SUBARCH_DIR	= $(SUBARCH_DIR_$(CLASS))
45
46#
47#	Section 1a: C object build rules
48#
49$(OBJS_DIR)/%.o:		$(SRC)/common/fs/%.c
50	$(COMPILE.c) -o $@ $<
51	$(CTFCONVERT_O)
52
53$(OBJS_DIR)/%.o:		$(UTSBASE)/common/io/power/%.c
54	$(COMPILE.c) -o $@ $<
55	$(CTFCONVERT_O)
56
57$(OBJS_DIR)/%.o:		$(SRC)/common/util/i386/%.s
58	$(COMPILE.s) -o $@ $<
59
60$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/brand/sn1/%.s
61	$(COMPILE.s) -o $@ $<
62
63$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/dtrace/%.c
64	$(COMPILE.c) -o $@ $<
65	$(CTFCONVERT_O)
66
67$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/dtrace/%.s
68	$(COMPILE.s) -o $@ $<
69
70$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/fs/proc/%.c
71	$(COMPILE.c) -o $@ $<
72	$(CTFCONVERT_O)
73
74$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/ia32/ml/%.s
75	$(COMPILE.s) -o $@ $<
76
77$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/ia32/os/%.c
78	$(COMPILE.c) -o $@ $<
79	$(CTFCONVERT_O)
80
81$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/ia32/promif/%.c
82	$(COMPILE.c) -o $@ $<
83	$(CTFCONVERT_O)
84
85$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/ia32/syscall/%.c
86	$(COMPILE.c) -o $@ $<
87	$(CTFCONVERT_O)
88
89$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/%.c
90	$(COMPILE.c) -o $@ $<
91	$(CTFCONVERT_O)
92
93$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/aac/%.c
94	$(COMPILE.c) -o $@ $<
95	$(CTFCONVERT_O)
96
97$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/%.c
98	$(COMPILE.c) -o $@ $<
99	$(CTFCONVERT_O)
100
101$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/%.s
102	$(COMPILE.s) -o $@ $<
103
104$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/debugger/%.c
105	$(COMPILE.c) -o $@ $<
106	$(CTFCONVERT_O)
107
108$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/events/%.c
109	$(COMPILE.c) -o $@ $<
110	$(CTFCONVERT_O)
111
112$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/hardware/%.c
113	$(COMPILE.c) -o $@ $<
114	$(CTFCONVERT_O)
115
116$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/interpreter/dispatcher/%.c
117	$(COMPILE.c) -o $@ $<
118	$(CTFCONVERT_O)
119
120$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/interpreter/executer/%.c
121	$(COMPILE.c) -o $@ $<
122	$(CTFCONVERT_O)
123
124$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/interpreter/parser/%.c
125	$(COMPILE.c) -o $@ $<
126	$(CTFCONVERT_O)
127
128$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/namespace/%.c
129	$(COMPILE.c) -o $@ $<
130	$(CTFCONVERT_O)
131
132$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/resources/%.c
133	$(COMPILE.c) -o $@ $<
134	$(CTFCONVERT_O)
135
136$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/tables/%.c
137	$(COMPILE.c) -o $@ $<
138	$(CTFCONVERT_O)
139
140$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/utilities/%.c
141	$(COMPILE.c) -o $@ $<
142	$(CTFCONVERT_O)
143
144$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/acpica/disassembler/%.c
145	$(COMPILE.c) -o $@ $<
146	$(CTFCONVERT_O)
147
148$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/agpgart/%.c
149	$(COMPILE.c) -o $@ $<
150	$(CTFCONVERT_O)
151
152$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/agpmaster/%.c
153	$(COMPILE.c) -o $@ $<
154	$(CTFCONVERT_O)
155
156$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/amr/%.c
157	$(COMPILE.c) -o $@ $<
158	$(CTFCONVERT_O)
159
160$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/drm/%.c
161	$(COMPILE.c) -o $@ $<
162	$(CTFCONVERT_O)
163
164$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/drm/%.s
165	$(COMPILE.s) -o $@ $<
166
167$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/hotplug/pcicfg/%.c
168	$(COMPILE.c) -o $@ $<
169	$(CTFCONVERT_O)
170
171$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/hotplug/pciehpc/%.c
172	$(COMPILE.c) -o $@ $<
173	$(CTFCONVERT_O)
174
175$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/pci/%.c
176	$(COMPILE.c) -o $@ $<
177	$(CTFCONVERT_O)
178
179$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/pciex/%.c
180	$(COMPILE.c) -o $@ $<
181	$(CTFCONVERT_O)
182
183$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/controller/ata/%.c
184	$(COMPILE.c) -o $@ $<
185	$(CTFCONVERT_O)
186
187$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/dcdev/%.c
188	$(COMPILE.c) -o $@ $<
189	$(CTFCONVERT_O)
190
191$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/disk/%.c
192	$(COMPILE.c) -o $@ $<
193	$(CTFCONVERT_O)
194
195$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/drvobj/%.c
196	$(COMPILE.c) -o $@ $<
197	$(CTFCONVERT_O)
198
199$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/hba/ghd/%.c
200	$(COMPILE.c) -o $@ $<
201	$(CTFCONVERT_O)
202
203$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/scsi/targets/%.c
204	$(COMPILE.c) -o $@ $<
205	$(CTFCONVERT_O)
206
207$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/vgatext/%.c
208	$(COMPILE.c) -o $@ $<
209	$(CTFCONVERT_O)
210
211$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/os/%.c
212	$(COMPILE.c) -o $@ $<
213	$(CTFCONVERT_O)
214
215$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/pcbe/%.c
216	$(COMPILE.c) -o $@ $<
217	$(CTFCONVERT_O)
218
219$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/promif/%.c
220	$(COMPILE.c) -o $@ $<
221	$(CTFCONVERT_O)
222
223$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/syscall/%.c
224	$(COMPILE.c) -o $@ $<
225	$(CTFCONVERT_O)
226
227$(OBJS_DIR)/%.o:		$(UTSBASE)/common/os/%.c
228	$(COMPILE.c) -o $@ $<
229	$(CTFCONVERT_O)
230
231$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/kdi/%.c
232	$(COMPILE.c) -o $@ $<
233	$(CTFCONVERT_O)
234
235$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/kdi/%.s
236	$(COMPILE.s) -o $@ $<
237
238$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/kdi/$(SUBARCH_DIR)/%.s
239	$(COMPILE.s) -o $@ $<
240
241#
242# krtld compiled into unix
243#
244
245KRTLD_INC_PATH	= -I$(UTSBASE)/common/krtld -I$(UTSBASE)/intel/sys
246KRTLD_INC_PATH	+= -I$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld
247
248KRTLD_CPPFLAGS_32	= -DELF_TARGET_386
249KRTLD_CPPFLAGS_64	= -DELF_TARGET_AMD64 -DMODDIR_SUFFIX=\"amd64\"
250KRTLD_CPPFLAGS		= $(KRTLD_CPPFLAGS_$(CLASS)) -D_KRTLD
251
252$(OBJS_DIR)/%.o:	$(UTSBASE)/common/krtld/%.c
253	$(COMPILE.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) -o $@ $<
254	$(CTFCONVERT_O)
255
256$(OBJS_DIR)/%.o:	$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld/%.c
257	$(COMPILE.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) -o $@ $<
258	$(CTFCONVERT_O)
259
260$(OBJS_DIR)/%.o:	$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld/%.s
261	$(COMPILE.s) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) -o $@ $<
262	$(CTFCONVERT_O)
263
264$(OBJS_DIR)/%.o:	$(SRC)/common/util/$(SUBARCH_DIR)/%.c
265	$(COMPILE.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) -o $@ $<
266	$(CTFCONVERT_O)
267
268
269#
270#	Section 1b: Lint `object' build rules.
271#
272$(LINTS_DIR)/%.ln:		$(SRC)/common/fs/%.c
273	@($(LHEAD) $(LINT.c) $< $(LTAIL))
274
275$(LINTS_DIR)/%.ln:		$(SRC)/common/util/i386/%.s
276	@($(LHEAD) $(LINT.s) $< $(LTAIL))
277
278$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/brand/sn1/%.s
279	@($(LHEAD) $(LINT.s) $< $(LTAIL))
280
281$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/dtrace/%.c
282	@($(LHEAD) $(LINT.c) $< $(LTAIL))
283
284$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/dtrace/%.s
285	@($(LHEAD) $(LINT.s) $< $(LTAIL))
286
287$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/fs/proc/%.c
288	@($(LHEAD) $(LINT.c) $< $(LTAIL))
289
290$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/ia32/ml/%.s
291	@($(LHEAD) $(LINT.s) $< $(LTAIL))
292
293$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/ia32/os/%.c
294	@($(LHEAD) $(LINT.c) $< $(LTAIL))
295
296$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/ia32/promif/%.c
297	@($(LHEAD) $(LINT.c) $< $(LTAIL))
298
299$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/ia32/syscall/%.c
300	@($(LHEAD) $(LINT.c) $< $(LTAIL))
301
302$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/%.c
303	@($(LHEAD) $(LINT.c) $< $(LTAIL))
304
305$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/aac/%.c
306	@($(LHEAD) $(LINT.c) $< $(LTAIL))
307
308$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/%.s
309	@($(LHEAD) $(LINT.s) $< $(LTAIL))
310
311$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/%.c
312	@($(LHEAD) $(LINT.c) $< $(LTAIL))
313
314$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/debugger/%.c
315	@($(LHEAD) $(LINT.c) $< $(LTAIL))
316
317$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/events/%.c
318	@($(LHEAD) $(LINT.c) $< $(LTAIL))
319
320$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/hardware/%.c
321	@($(LHEAD) $(LINT.c) $< $(LTAIL))
322
323$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/interpreter/dispatcher/%.c
324	@($(LHEAD) $(LINT.c) $< $(LTAIL))
325
326$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/interpreter/executer/%.c
327	@($(LHEAD) $(LINT.c) $< $(LTAIL))
328
329$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/interpreter/parser/%.c
330	@($(LHEAD) $(LINT.c) $< $(LTAIL))
331
332$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/namespace/%.c
333	@($(LHEAD) $(LINT.c) $< $(LTAIL))
334
335$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/resources/%.c
336	@($(LHEAD) $(LINT.c) $< $(LTAIL))
337
338$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/tables/%.c
339	@($(LHEAD) $(LINT.c) $< $(LTAIL))
340
341$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/utilities/%.c
342	@($(LHEAD) $(LINT.c) $< $(LTAIL))
343
344$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/disassembler/%.c
345	@($(LHEAD) $(LINT.c) $< $(LTAIL))
346
347$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/agpgart/%.c
348	@($(LHEAD) $(LINT.c) $< $(LTAIL))
349
350$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/agpmaster/%.c
351	@($(LHEAD) $(LINT.c) $< $(LTAIL))
352
353$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/amr/%.c
354	@($(LHEAD) $(LINT.c) $< $(LTAIL))
355
356$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/drm/%.c
357	@($(LHEAD) $(LINT.c) $< $(LTAIL))
358
359$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/drm/%.s
360	@($(LHEAD) $(LINT.s) $< $(LTAIL))
361
362$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/hotplug/pcicfg/%.c
363	@($(LHEAD) $(LINT.c) $< $(LTAIL))
364
365$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/hotplug/pciehpc/%.c
366	@($(LHEAD) $(LINT.c) $< $(LTAIL))
367
368$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/pci/%.c
369	@($(LHEAD) $(LINT.c) $< $(LTAIL))
370
371$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/pciex/%.c
372	@($(LHEAD) $(LINT.c) $< $(LTAIL))
373
374$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/controller/ata/%.c
375	@($(LHEAD) $(LINT.c) $< $(LTAIL))
376
377$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/dcdev/%.c
378	@($(LHEAD) $(LINT.c) $< $(LTAIL))
379
380$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/disk/%.c
381	@($(LHEAD) $(LINT.c) $< $(LTAIL))
382
383$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/drvobj/%.c
384	@($(LHEAD) $(LINT.c) $< $(LTAIL))
385
386$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/hba/ghd/%.c
387	@($(LHEAD) $(LINT.c) $< $(LTAIL))
388
389$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/scsi/targets/%.c
390	@($(LHEAD) $(LINT.c) $< $(LTAIL))
391
392$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/vgatext/%.c
393	@($(LHEAD) $(LINT.c) $< $(LTAIL))
394
395$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/os/%.c
396	@($(LHEAD) $(LINT.c) $< $(LTAIL))
397
398$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/pcbe/%.c
399	@($(LHEAD) $(LINT.c) $< $(LTAIL))
400
401$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/promif/%.c
402	@($(LHEAD) $(LINT.c) $< $(LTAIL))
403
404$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/syscall/%.c
405	@($(LHEAD) $(LINT.c) $< $(LTAIL))
406
407$(LINTS_DIR)/%.ln:		$(UTSBASE)/common/os/%.c
408	@($(LHEAD) $(LINT.c) $< $(LTAIL))
409
410$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/kdi/%.c
411	@($(LHEAD) $(LINT.c) $< $(LTAIL))
412
413$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/kdi/%.s
414	@($(LHEAD) $(LINT.s) $< $(LTAIL))
415
416$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/kdi/$(SUBARCH_DIR)/%.s
417	@($(LHEAD) $(LINT.s) $< $(LTAIL))
418
419#
420# krtld lints
421#
422$(LINTS_DIR)/%.ln:		$(UTSBASE)/common/krtld/%.c
423	@($(LHEAD) $(LINT.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) $< $(LTAIL))
424
425$(LINTS_DIR)/%.ln:	$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld/%.c
426	@($(LHEAD) $(LINT.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) $< $(LTAIL))
427
428$(LINTS_DIR)/%.ln:	$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld/%.s
429	@($(LHEAD) $(LINT.s) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) $< $(LTAIL))
430
431$(LINTS_DIR)/%.ln:	$(SRC)/common/util/$(SUBARCH_DIR)/%.c
432	@($(LHEAD) $(LINT.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) $< $(LTAIL))
433
434