xref: /illumos-gate/usr/src/uts/intel/Makefile.rules (revision 924db11bd45e384ed350190cc9fc0f9ea85e21dd)
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/amd8111s/%.c
157	$(COMPILE.c) -o $@ $<
158	$(CTFCONVERT_O)
159
160$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/amr/%.c
161	$(COMPILE.c) -o $@ $<
162	$(CTFCONVERT_O)
163
164$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/drm/%.c
165	$(COMPILE.c) -o $@ $<
166	$(CTFCONVERT_O)
167
168$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/hotplug/pcicfg/%.c
169	$(COMPILE.c) -o $@ $<
170	$(CTFCONVERT_O)
171
172$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/hotplug/pciehpc/%.c
173	$(COMPILE.c) -o $@ $<
174	$(CTFCONVERT_O)
175
176$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/pci/%.c
177	$(COMPILE.c) -o $@ $<
178	$(CTFCONVERT_O)
179
180$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/pciex/%.c
181	$(COMPILE.c) -o $@ $<
182	$(CTFCONVERT_O)
183
184$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/controller/ata/%.c
185	$(COMPILE.c) -o $@ $<
186	$(CTFCONVERT_O)
187
188$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/dcdev/%.c
189	$(COMPILE.c) -o $@ $<
190	$(CTFCONVERT_O)
191
192$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/disk/%.c
193	$(COMPILE.c) -o $@ $<
194	$(CTFCONVERT_O)
195
196$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/drvobj/%.c
197	$(COMPILE.c) -o $@ $<
198	$(CTFCONVERT_O)
199
200$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/dktp/hba/ghd/%.c
201	$(COMPILE.c) -o $@ $<
202	$(CTFCONVERT_O)
203
204$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/scsi/targets/%.c
205	$(COMPILE.c) -o $@ $<
206	$(CTFCONVERT_O)
207
208$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/io/vgatext/%.c
209	$(COMPILE.c) -o $@ $<
210	$(CTFCONVERT_O)
211
212$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/os/%.c
213	$(COMPILE.c) -o $@ $<
214	$(CTFCONVERT_O)
215
216$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/pcbe/%.c
217	$(COMPILE.c) -o $@ $<
218	$(CTFCONVERT_O)
219
220$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/promif/%.c
221	$(COMPILE.c) -o $@ $<
222	$(CTFCONVERT_O)
223
224$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/syscall/%.c
225	$(COMPILE.c) -o $@ $<
226	$(CTFCONVERT_O)
227
228$(OBJS_DIR)/%.o:		$(UTSBASE)/common/os/%.c
229	$(COMPILE.c) -o $@ $<
230	$(CTFCONVERT_O)
231
232$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/kdi/%.c
233	$(COMPILE.c) -o $@ $<
234	$(CTFCONVERT_O)
235
236$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/kdi/%.s
237	$(COMPILE.s) -o $@ $<
238
239$(OBJS_DIR)/%.o:		$(UTSBASE)/intel/kdi/$(SUBARCH_DIR)/%.s
240	$(COMPILE.s) -o $@ $<
241
242#
243# krtld compiled into unix
244#
245
246KRTLD_INC_PATH	= -I$(UTSBASE)/common/krtld -I$(UTSBASE)/intel/sys
247KRTLD_INC_PATH	+= -I$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld
248
249KRTLD_CPPFLAGS_32	= -DELF_TARGET_386
250KRTLD_CPPFLAGS_64	= -DELF_TARGET_AMD64 -DMODDIR_SUFFIX=\"amd64\"
251KRTLD_CPPFLAGS		= $(KRTLD_CPPFLAGS_$(CLASS)) -D_KRTLD
252
253$(OBJS_DIR)/%.o:	$(UTSBASE)/common/krtld/%.c
254	$(COMPILE.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) -o $@ $<
255	$(CTFCONVERT_O)
256
257$(OBJS_DIR)/%.o:	$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld/%.c
258	$(COMPILE.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) -o $@ $<
259	$(CTFCONVERT_O)
260
261$(OBJS_DIR)/%.o:	$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld/%.s
262	$(COMPILE.s) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) -o $@ $<
263	$(CTFCONVERT_O)
264
265$(OBJS_DIR)/%.o:	$(SRC)/common/util/$(SUBARCH_DIR)/%.c
266	$(COMPILE.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) -o $@ $<
267	$(CTFCONVERT_O)
268
269
270#
271#	Section 1b: Lint `object' build rules.
272#
273$(LINTS_DIR)/%.ln:		$(SRC)/common/fs/%.c
274	@($(LHEAD) $(LINT.c) $< $(LTAIL))
275
276$(LINTS_DIR)/%.ln:		$(SRC)/common/util/i386/%.s
277	@($(LHEAD) $(LINT.s) $< $(LTAIL))
278
279$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/brand/sn1/%.s
280	@($(LHEAD) $(LINT.s) $< $(LTAIL))
281
282$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/dtrace/%.c
283	@($(LHEAD) $(LINT.c) $< $(LTAIL))
284
285$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/dtrace/%.s
286	@($(LHEAD) $(LINT.s) $< $(LTAIL))
287
288$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/fs/proc/%.c
289	@($(LHEAD) $(LINT.c) $< $(LTAIL))
290
291$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/ia32/ml/%.s
292	@($(LHEAD) $(LINT.s) $< $(LTAIL))
293
294$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/ia32/os/%.c
295	@($(LHEAD) $(LINT.c) $< $(LTAIL))
296
297$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/ia32/promif/%.c
298	@($(LHEAD) $(LINT.c) $< $(LTAIL))
299
300$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/ia32/syscall/%.c
301	@($(LHEAD) $(LINT.c) $< $(LTAIL))
302
303$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/%.c
304	@($(LHEAD) $(LINT.c) $< $(LTAIL))
305
306$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/aac/%.c
307	@($(LHEAD) $(LINT.c) $< $(LTAIL))
308
309$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/%.s
310	@($(LHEAD) $(LINT.s) $< $(LTAIL))
311
312$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/%.c
313	@($(LHEAD) $(LINT.c) $< $(LTAIL))
314
315$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/debugger/%.c
316	@($(LHEAD) $(LINT.c) $< $(LTAIL))
317
318$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/events/%.c
319	@($(LHEAD) $(LINT.c) $< $(LTAIL))
320
321$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/hardware/%.c
322	@($(LHEAD) $(LINT.c) $< $(LTAIL))
323
324$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/interpreter/dispatcher/%.c
325	@($(LHEAD) $(LINT.c) $< $(LTAIL))
326
327$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/interpreter/executer/%.c
328	@($(LHEAD) $(LINT.c) $< $(LTAIL))
329
330$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/interpreter/parser/%.c
331	@($(LHEAD) $(LINT.c) $< $(LTAIL))
332
333$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/namespace/%.c
334	@($(LHEAD) $(LINT.c) $< $(LTAIL))
335
336$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/resources/%.c
337	@($(LHEAD) $(LINT.c) $< $(LTAIL))
338
339$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/tables/%.c
340	@($(LHEAD) $(LINT.c) $< $(LTAIL))
341
342$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/utilities/%.c
343	@($(LHEAD) $(LINT.c) $< $(LTAIL))
344
345$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/acpica/disassembler/%.c
346	@($(LHEAD) $(LINT.c) $< $(LTAIL))
347
348$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/agpgart/%.c
349	@($(LHEAD) $(LINT.c) $< $(LTAIL))
350
351$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/agpmaster/%.c
352	@($(LHEAD) $(LINT.c) $< $(LTAIL))
353
354$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/amd8111s/%.c
355	@($(LHEAD) $(LINT.c) $< $(LTAIL))
356
357$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/amr/%.c
358	@($(LHEAD) $(LINT.c) $< $(LTAIL))
359
360$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/drm/%.c
361	@($(LHEAD) $(LINT.c) $< $(LTAIL))
362
363$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/hotplug/pcicfg/%.c
364	@($(LHEAD) $(LINT.c) $< $(LTAIL))
365
366$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/hotplug/pciehpc/%.c
367	@($(LHEAD) $(LINT.c) $< $(LTAIL))
368
369$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/pci/%.c
370	@($(LHEAD) $(LINT.c) $< $(LTAIL))
371
372$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/pciex/%.c
373	@($(LHEAD) $(LINT.c) $< $(LTAIL))
374
375$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/controller/ata/%.c
376	@($(LHEAD) $(LINT.c) $< $(LTAIL))
377
378$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/dcdev/%.c
379	@($(LHEAD) $(LINT.c) $< $(LTAIL))
380
381$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/disk/%.c
382	@($(LHEAD) $(LINT.c) $< $(LTAIL))
383
384$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/drvobj/%.c
385	@($(LHEAD) $(LINT.c) $< $(LTAIL))
386
387$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/dktp/hba/ghd/%.c
388	@($(LHEAD) $(LINT.c) $< $(LTAIL))
389
390$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/scsi/targets/%.c
391	@($(LHEAD) $(LINT.c) $< $(LTAIL))
392
393$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/io/vgatext/%.c
394	@($(LHEAD) $(LINT.c) $< $(LTAIL))
395
396$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/os/%.c
397	@($(LHEAD) $(LINT.c) $< $(LTAIL))
398
399$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/pcbe/%.c
400	@($(LHEAD) $(LINT.c) $< $(LTAIL))
401
402$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/promif/%.c
403	@($(LHEAD) $(LINT.c) $< $(LTAIL))
404
405$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/syscall/%.c
406	@($(LHEAD) $(LINT.c) $< $(LTAIL))
407
408$(LINTS_DIR)/%.ln:		$(UTSBASE)/common/os/%.c
409	@($(LHEAD) $(LINT.c) $< $(LTAIL))
410
411$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/kdi/%.c
412	@($(LHEAD) $(LINT.c) $< $(LTAIL))
413
414$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/kdi/%.s
415	@($(LHEAD) $(LINT.s) $< $(LTAIL))
416
417$(LINTS_DIR)/%.ln:		$(UTSBASE)/intel/kdi/$(SUBARCH_DIR)/%.s
418	@($(LHEAD) $(LINT.s) $< $(LTAIL))
419
420#
421# krtld lints
422#
423$(LINTS_DIR)/%.ln:		$(UTSBASE)/common/krtld/%.c
424	@($(LHEAD) $(LINT.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) $< $(LTAIL))
425
426$(LINTS_DIR)/%.ln:	$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld/%.c
427	@($(LHEAD) $(LINT.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) $< $(LTAIL))
428
429$(LINTS_DIR)/%.ln:	$(UTSBASE)/intel/$(SUBARCH_DIR)/krtld/%.s
430	@($(LHEAD) $(LINT.s) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) $< $(LTAIL))
431
432$(LINTS_DIR)/%.ln:	$(SRC)/common/util/$(SUBARCH_DIR)/%.c
433	@($(LHEAD) $(LINT.c) $(KRTLD_INC_PATH) $(KRTLD_CPPFLAGS) $< $(LTAIL))
434
435