xref: /illumos-gate/usr/src/psm/stand/boot/Makefile.rules (revision 66582b606a8194f7f3ba5b3a3a6dca5b0d346361)
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# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
22# Use is subject to license terms.
23#
24# psm/stand/boot/Makefile.rules
25
26#CPPFLAGS += -DDEBUG=1
27
28#
29# Pattern matching rules to compile the source in the current directory
30#
31%.o: $(TOP_CMN_DIR)/util/%.c
32	$(COMPILE.c) -o $@ $<
33	$(POST_PROCESS_O)
34
35%.o: $(TOP_CMN_DIR)/fs/%.c
36	$(COMPILE.c) -o $@ $<
37	$(POST_PROCESS_O)
38
39%.o: $(PROM_DIR)/%.c
40	$(COMPILE.c) -o $@ $<
41	$(POST_PROCESS_O)
42
43%.o: $(CMN_DIR)/%.c
44	$(COMPILE.c) -o $@ $<
45	$(POST_PROCESS_O)
46
47%.o: $(PIM_DIR)/%.c
48	$(COMPILE.c) -o $@ $<
49	$(POST_PROCESS_O)
50
51%.o: $(PAMD64_DIR)/%.c
52	$(COMPILE.c) -o $@ $<
53	$(POST_PROCESS_O)
54
55%.o: $(PAMD64_DIR)/%.s
56	$(COMPILE.s) -o $@ $<
57	$(POST_PROCESS_O)
58
59%.o: $(MACH_DIR)/%.s
60	$(COMPILE.s) -o $@ $<
61	$(POST_PROCESS_O)
62
63%.o: $(MACH_DIR)/%.c
64	$(COMPILE.c) -o $@ $<
65	$(POST_PROCESS_O)
66
67%.o: %.s
68	$(COMPILE.s) -o $@ $<
69	$(POST_PROCESS_O)
70
71%.o: $(PLAT_DIR)/%.c
72	$(COMPILE.c) -o $@ $<
73	$(POST_PROCESS_O)
74
75#
76# Pattern matching rules to lint the source in the current directory
77#
78%.ln: $(TOP_CMN_DIR)/util/%.c
79	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
80
81%.ln: $(TOP_CMN_DIR)/fs/%.c
82	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
83
84%.ln: $(PROM_DIR)/%.c
85	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
86
87%.ln: $(CMN_DIR)/%.c
88	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
89
90%.ln: $(PIM_DIR)/%.c
91	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
92
93%.ln: $(PAMD64_DIR)/%.s
94	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
95
96%.ln: $(PAMD64_DIR)/%.c
97	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
98
99%.ln: $(MACH_DIR)/%.s
100	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
101
102%.ln: $(MACH_DIR)/%.c
103	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
104
105%.ln: %.s
106	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
107
108%.ln: $(PLAT_DIR)/%.c
109	@($(LHEAD) $(LINT.c) -c $< $(LTAIL))
110
111#
112# Rules to compile libraries needed to build and lint the boot loaders.
113#
114$(LIBPROM_DIR)/libprom.a $(LIBPLAT_DEP) $(LIBNAME_DIR)/libnames.a: FRC
115	@cd $(@D); pwd; $(MAKE) $(@F)
116
117$(LIBPROM_DIR)/llib-lprom.ln $(LIBPLAT_DEP_L) $(LIBNAME_DIR)/llib-lnames.ln: FRC
118	@cd $(@D); pwd; $(MAKE) $(@F)
119
120FRC:
121