xref: /illumos-gate/usr/src/psm/stand/boot/Makefile.rules (revision 8b80e8cb6855118d46f605e91b5ed4ce83417395)
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, Version 1.0 only
6# (the "License").  You may not use this file except in compliance
7# with the License.
8#
9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10# or http://www.opensolaris.org/os/licensing.
11# See the License for the specific language governing permissions
12# and limitations under the License.
13#
14# When distributing Covered Code, include this CDDL HEADER in each
15# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16# If applicable, add the following below this CDDL HEADER, with the
17# fields enclosed by brackets "[]" replaced with your own identifying
18# information: Portions Copyright [yyyy] [name of copyright owner]
19#
20# CDDL HEADER END
21#
22#
23# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26#pragma ident	"%Z%%M%	%I%	%E% SMI"
27#
28# psm/stand/boot/Makefile.rules
29
30#CPPFLAGS += -DDEBUG=1
31
32#
33# Pattern matching rules to compile the source in the current directory
34#
35%.o: $(TOP_CMN_DIR)/util/%.c
36	$(COMPILE.c) -o $@ $<
37	$(POST_PROCESS_O)
38
39%.o: $(TOP_CMN_DIR)/fs/%.c
40	$(COMPILE.c) -o $@ $<
41	$(POST_PROCESS_O)
42
43%.o: $(PROM_DIR)/%.c
44	$(COMPILE.c) -o $@ $<
45	$(POST_PROCESS_O)
46
47%.o: $(CMN_DIR)/%.c
48	$(COMPILE.c) -o $@ $<
49	$(POST_PROCESS_O)
50
51%.o: $(PIM_DIR)/%.c
52	$(COMPILE.c) -o $@ $<
53	$(POST_PROCESS_O)
54
55%.o: $(PAMD64_DIR)/%.c
56	$(COMPILE.c) -o $@ $<
57	$(POST_PROCESS_O)
58
59%.o: $(PAMD64_DIR)/%.s
60	$(COMPILE.s) -o $@ $<
61	$(POST_PROCESS_O)
62
63%.o: $(MACH_DIR)/%.s
64	$(COMPILE.s) -o $@ $<
65	$(POST_PROCESS_O)
66
67%.o: $(MACH_DIR)/%.c
68	$(COMPILE.c) -o $@ $<
69	$(POST_PROCESS_O)
70
71%.o: %.s
72	$(COMPILE.s) -o $@ $<
73	$(POST_PROCESS_O)
74
75%.o: $(PLAT_DIR)/%.c
76	$(COMPILE.c) -o $@ $<
77	$(POST_PROCESS_O)
78
79#
80# Pattern matching rules to lint the source in the current directory
81#
82%.ln: $(TOP_CMN_DIR)/util/%.c
83	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
84
85%.ln: $(TOP_CMN_DIR)/fs/%.c
86	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
87
88%.ln: $(PROM_DIR)/%.c
89	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
90
91%.ln: $(CMN_DIR)/%.c
92	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
93
94%.ln: $(PIM_DIR)/%.c
95	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
96
97%.ln: $(PAMD64_DIR)/%.s
98	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
99
100%.ln: $(PAMD64_DIR)/%.c
101	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
102
103%.ln: $(MACH_DIR)/%.s
104	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
105
106%.ln: $(MACH_DIR)/%.c
107	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
108
109%.ln: %.s
110	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
111
112%.ln: $(PLAT_DIR)/%.c
113	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
114
115#
116# Rules to compile libraries needed to build and lint the boot loaders.
117#
118$(LIBPROM_DIR)/libprom.a $(LIBPLAT_DEP) $(LIBNAME_DIR)/libnames.a: FRC
119	@cd $(@D); pwd; $(MAKE) $(@F)
120
121$(LIBPROM_DIR)/llib-lprom.ln $(LIBPLAT_DEP_L) $(LIBNAME_DIR)/llib-lnames.ln: FRC
122	@cd $(@D); pwd; $(MAKE) $(@F)
123
124FRC:
125