Home | History | Annotate | Download | only in sun4u
      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 #
     23 # Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
     24 # Use is subject to license terms.
     25 #
     26 # ident	"%Z%%M%	%I%	%E% SMI"
     27 #
     28 #	This Makefile defines the build rules for the directory uts/sun4u
     29 #	and its children. These are the source files which sun4u
     30 #	"implementation architecture" dependent.
     31 #
     32 #	The following two-level ordering must be maintained in this file.
     33 #	  Lines are sorted first in order of decreasing specificity based on
     34 #	  the first directory component.  That is, sun4u rules come before
     35 #	  sparc rules come before common rules.
     36 #
     37 #	  Lines whose initial directory components are equal are sorted
     38 #	  alphabetically by the remaining components.
     39 
     40 #
     41 #	Section 1a: C object build rules
     42 #
     43 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/cpu/%.c
     44 	$(COMPILE.c) -o $@ $<
     45 	$(CTFCONVERT_O)
     46 
     47 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/cpu/%.s
     48 	$(COMPILE.s) -o $@ $<
     49 
     50 #
     51 # This rule for io/ppm/%.c needs to come before the io/%.c rule so that
     52 # the sun4u/ppm driver pulls in io/ppm/ppm.c instead of io/ppm.c.
     53 # Making an explicit rule to build ppm.o doesn't work because it breaks
     54 # the build of excalibur/xcalppm
     55 #
     56 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/ppm/%.c
     57 	$(COMPILE.c) -o $@ $<
     58 	$(CTFCONVERT_O)
     59 
     60 $(OBJS_DIR)/%.o:		$(UTSBASE)/common/io/ppm/%.c
     61 	$(COMPILE.c) -o $@ $<
     62 	$(CTFCONVERT_O)
     63 
     64 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/%.s
     65 	$(COMPILE.s) -o $@ $<
     66 
     67 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/%.c
     68 	$(COMPILE.c) -o $@ $<
     69 	$(CTFCONVERT_O)
     70 
     71 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/i2c/clients/%.c
     72 	$(COMPILE.c) -o $@ $<
     73 	$(CTFCONVERT_O)
     74 
     75 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/i2c/misc/%.c
     76 	$(COMPILE.c) -o $@ $<
     77 	$(CTFCONVERT_O)
     78 
     79 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/i2c/nexus/%.c
     80 	$(COMPILE.c) -o $@ $<
     81 	$(CTFCONVERT_O)
     82 
     83 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/pci/%.c
     84 	$(COMPILE.c) -o $@ $<
     85 	$(CTFCONVERT_O)
     86 
     87 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/pci/%.s
     88 	$(COMPILE.s) -o $@ $<
     89 
     90 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/px/%.c
     91 	$(COMPILE.c) -o $@ $<
     92 	$(CTFCONVERT_O)
     93 
     94 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/io/px/%.s
     95 	$(COMPILE.s) -o $@ $<
     96 
     97 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/ml/%.s
     98 	$(COMPILE.s) -o $@ $<
     99 
    100 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/os/%.c
    101 	$(COMPILE.c) -o $@ $<
    102 	$(CTFCONVERT_O)
    103 
    104 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/pcbe/%.c
    105 	$(COMPILE.c) -o $@ $<
    106 	$(CTFCONVERT_O)
    107 
    108 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4/brand/sn1/%.s
    109 	$(COMPILE.s) -o $@ $<
    110 
    111 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/vm/%.c
    112 	$(COMPILE.c) -o $@ $<
    113 	$(CTFCONVERT_O)
    114 
    115 $(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/vm/%.s
    116 	$(COMPILE.s) -o $@ $<
    117 
    118 $(OBJS_DIR)/%.o:		$(UTSBASE)/sfmmu/ml/%.s
    119 	$(COMPILE.s) -o $@ $<
    120 
    121 $(OBJS_DIR)/%.o:		$(UTSBASE)/sfmmu/vm/%.c
    122 	$(COMPILE.c) -o $@ $<
    123 	$(CTFCONVERT_O)
    124 
    125 $(OBJS_DIR)/%.o:		$(UTSBASE)/sparc/os/%.c
    126 	$(COMPILE.c) -o $@ $<
    127 	$(CTFCONVERT_O)
    128 
    129 $(OBJS_DIR)/%.o:		$(UTSBASE)/common/os/%.c
    130 	$(COMPILE.c) -o $@ $<
    131 	$(CTFCONVERT_O)
    132 
    133 $(OBJS_DIR)/%.o:		$(SRC)/common/bignum/sun4u/%.s
    134 	$(COMPILE.s) -o $@ $<
    135 
    136 $(OBJS_DIR)/%.o:		$(SRC)/common/crypto/aes/%.c
    137 	$(COMPILE.c) -o $@ $<
    138 	$(CTFCONVERT_O)
    139 
    140 $(OBJS_DIR)/%.o:		$(SRC)/common/crypto/arcfour/%.c
    141 	$(COMPILE.c) -o $@ $<
    142 	$(CTFCONVERT_O)
    143 
    144 $(OBJS_DIR)/%.o:		$(SRC)/common/crypto/des/%.c
    145 	$(COMPILE.c) -o $@ $<
    146 	$(CTFCONVERT_O)
    147 
    148 $(OBJS_DIR)/%.o:		$(SRC)/common/crypto/aes/sun4u/%.s
    149 	$(COMPILE.s) -o $@ $<
    150 
    151 $(OBJS_DIR)/%.o:		$(SRC)/common/crypto/arcfour/sun4u/%.s
    152 	$(COMPILE.s) -o $@ $<
    153 
    154 $(OBJS_DIR)/%.o:		$(SRC)/common/crypto/des/sun4u/%.s
    155 	$(COMPILE.s) -o $@ $<
    156 
    157 $(OBJS_DIR)/%.o:		$(SRC)/common/crypto/sha1/sparc/sun4u/%.s
    158 	$(COMPILE.s) -o $@ $<
    159 
    160 $(OBJS_DIR)/%.o:		$(SRC)/common/atomic/sparcv9/%.s
    161 	$(COMPILE.s) -o $@ $<
    162 
    163 $(OBJS_DIR)/dtracestubs.s:	$(UNIX_O) $(LIBS)
    164 	$(NM) -u $(UNIX_O) $(LIBS) | $(GREP) __dtrace_probe_ | $(SORT) | \
    165 	    $(UNIQ) | $(NAWK) '{ \
    166 	    printf("\t.global %s\n\t.type %s, #function\n%s:\n", \
    167 	    $$1, $$1, $$1); }' > $(OBJS_DIR)/dtracestubs.s
    168 
    169 $(DTRACESTUBS):	$(DTRACESTUBS_O)
    170 	$(BUILD.SO) $(DTRACESTUBS_O)
    171 
    172 #
    173 #	Section 1b: Lint `object' build rules
    174 #
    175 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/cpu/%.c
    176 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    177 
    178 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/cpu/%.s
    179 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    180 
    181 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/ppm/%.c
    182 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    183 
    184 $(LINTS_DIR)/%.ln:		$(UTSBASE)/common/io/ppm/%.c
    185 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    186 
    187 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/%.c
    188 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    189 
    190 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/%.s
    191 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    192 
    193 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/i2c/clients/%.c
    194 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    195 
    196 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/i2c/misc/%.c
    197 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    198 
    199 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/i2c/nexus/%.c
    200 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    201 
    202 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/pci/%.c
    203 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    204 
    205 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/pci/%.s
    206 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    207 
    208 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/px/%.c
    209 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    210 
    211 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/io/px/%.s
    212 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    213 
    214 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/ml/%.s
    215 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    216 
    217 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/os/%.c
    218 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    219 
    220 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/pcbe/%.c
    221 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    222 
    223 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4/brand/sn1/%.s
    224 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    225 
    226 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/vm/%.c
    227 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    228 
    229 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/vm/%.s
    230 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    231 
    232 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sfmmu/ml/%.s
    233 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    234 
    235 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sfmmu/vm/%.c
    236 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    237 
    238 $(LINTS_DIR)/%.ln:		$(UTSBASE)/sparc/os/%.c
    239 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    240 
    241 $(LINTS_DIR)/%.ln:		$(UTSBASE)/common/os/%.c
    242 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    243 
    244 $(LINTS_DIR)/%.ln:		$(SRC)/common/bignum/sun4u/%.s
    245 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    246 
    247 $(LINTS_DIR)/%.ln:		$(SRC)/common/crypto/aes/%.c
    248 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    249 
    250 $(LINTS_DIR)/%.ln:		$(SRC)/common/crypto/arcfour/%.c
    251 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    252 
    253 $(LINTS_DIR)/%.ln:		$(SRC)/common/crypto/des/%.c
    254 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    255 
    256 $(LINTS_DIR)/%.ln:		$(SRC)/common/crypto/aes/sun4u/%.s
    257 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    258 
    259 $(LINTS_DIR)/%.ln:		$(SRC)/common/crypto/arcfour/sun4u/%.s
    260 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    261 
    262 $(LINTS_DIR)/%.ln:		$(SRC)/common/crypto/des/sun4u/%.s
    263 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    264 
    265 $(LINTS_DIR)/%.ln:		$(SRC)/common/crypto/sha1/sparc/sun4u/%.s
    266 	@($(LHEAD) $(LINT.s) $< $(LTAIL))
    267 
    268 $(LINTS_DIR)/%.ln:		$(SRC)/common/atomic/%.c
    269 	@($(LHEAD) $(LINT.c) $< $(LTAIL))
    270