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.
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.
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]
22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
25 # This Makefile defines all file modules and build rules for the
26 # directory uts/sparc and its children. These are the source files which
27 # are specific to the sparc processor.
29 # The following two-level ordering must be maintained in this file.
30 # Lines are sorted first in order of decreasing specificity based on
31 # the first directory component. That is, sun4u rules come before
32 # sparc rules come before common rules.
34 # Lines whose initial directory components are equal are sorted
35 # alphabetically by the remaining components.
38 # Section 1a: C object build rules
40 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/dtrace/%.c
44 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/dtrace/%.s
47 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/io/%.c
51 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/io/pciex/%.c
55 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/fpu/%.c
59 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/fs/proc/%.c
63 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/krtld/%.c
67 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/zfs/%.c
72 # _RELSEG indicates that the dynamic syms are put in a separate ELF
73 # section so they can be freed later.
75 $(OBJS_DIR)/kobj_bootflags.o := CPPFLAGS += -I$(SRC)/common
76 $(OBJS_DIR)/kobj.o := CPPFLAGS += -DMODDIR_SUFFIX=\"sparcv9\"
77 $(OBJS_DIR)/kobj.o := CPPFLAGS += -D_RELSEG
79 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/krtld/%.s
82 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/ml/%.s
85 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/nskern/%.s
88 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/os/%.c
92 $(OBJS_DIR)/%.o: $(UTSBASE)/sparc/syscall/%.c
97 # Section 1b: Lint `object' build rules.
99 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/dtrace/%.c
100 @($(LHEAD) $(LINT.c) $< $(LTAIL))
102 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/dtrace/%.s
103 @($(LHEAD) $(LINT.s) $< $(LTAIL))
105 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/io/%.c
106 @($(LHEAD) $(LINT.c) $< $(LTAIL))
108 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/io/pciex/%.c
109 @($(LHEAD) $(LINT.c) $< $(LTAIL))
111 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/fpu/%.c
112 @($(LHEAD) $(LINT.c) $< $(LTAIL))
114 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/zfs/%.c
115 @($(LHEAD) $(LINT.c) $< $(LTAIL))
117 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/fs/proc/%.c
118 @($(LHEAD) $(LINT.c) $< $(LTAIL))
120 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/krtld/%.c
121 @($(LHEAD) $(LINT.c) $< $(LTAIL))
123 $(OBJS_DIR)/kobj_bootflags.ln := CPPFLAGS += -I$(SRC)/common
124 $(OBJS_DIR)/kobj.ln := CPPFLAGS += -DMODDIR_SUFFIX=\"sparcv9\"
125 $(OBJS_DIR)/kobj.ln := CPPFLAGS += -D_RELSEG
127 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/krtld/%.s
128 @($(LHEAD) $(LINT.s) $< $(LTAIL))
130 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/ml/%.s
131 @($(LHEAD) $(LINT.s) $< $(LTAIL))
133 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/nskern/%.s
134 @($(LHEAD) $(LINT.s) $< $(LTAIL))
136 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/os/%.c
137 @($(LHEAD) $(LINT.c) $< $(LTAIL))
139 $(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/syscall/%.c
140 @($(LHEAD) $(LINT.c) $< $(LTAIL))