17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 5986fd29aSsetje# Common Development and Distribution License (the "License"). 6986fd29aSsetje# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 217c478bd9Sstevel@tonic-gate# 22*e7cbe64fSgw25295# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 237c478bd9Sstevel@tonic-gate# Use is subject to license terms. 247c478bd9Sstevel@tonic-gate# 257c478bd9Sstevel@tonic-gate# ident "%Z%%M% %I% %E% SMI" 267c478bd9Sstevel@tonic-gate# 277c478bd9Sstevel@tonic-gate# This Makefile defines all file modules and build rules for the 287c478bd9Sstevel@tonic-gate# directory uts/sparc and its children. These are the source files which 297c478bd9Sstevel@tonic-gate# are specific to the sparc processor. 307c478bd9Sstevel@tonic-gate# 317c478bd9Sstevel@tonic-gate# The following two-level ordering must be maintained in this file. 327c478bd9Sstevel@tonic-gate# Lines are sorted first in order of decreasing specificity based on 337c478bd9Sstevel@tonic-gate# the first directory component. That is, sun4u rules come before 347c478bd9Sstevel@tonic-gate# sparc rules come before common rules. 357c478bd9Sstevel@tonic-gate# 367c478bd9Sstevel@tonic-gate# Lines whose initial directory components are equal are sorted 377c478bd9Sstevel@tonic-gate# alphabetically by the remaining components. 387c478bd9Sstevel@tonic-gate 397c478bd9Sstevel@tonic-gate# 407c478bd9Sstevel@tonic-gate# Section 1a: C object build rules 417c478bd9Sstevel@tonic-gate# 427c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/dtrace/%.c 437c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 447c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 457c478bd9Sstevel@tonic-gate 467c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/dtrace/%.s 477c478bd9Sstevel@tonic-gate $(COMPILE.s) -o $@ $< 487c478bd9Sstevel@tonic-gate 497c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/io/%.c 507c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 517c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 527c478bd9Sstevel@tonic-gate 537c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/fpu/%.c 547c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 557c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 567c478bd9Sstevel@tonic-gate 577c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/fs/proc/%.c 587c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 597c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 607c478bd9Sstevel@tonic-gate 617c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/krtld/%.c 627c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 637c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 647c478bd9Sstevel@tonic-gate 65*e7cbe64fSgw25295$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/zfs/%.c 66*e7cbe64fSgw25295 $(COMPILE.c) -o $@ $< 67*e7cbe64fSgw25295 $(CTFCONVERT_O) 68*e7cbe64fSgw25295 69986fd29aSsetje# 70986fd29aSsetje# _RELSEG indicates that the dynamic syms are put in a separate ELF 71986fd29aSsetje# section so they can be freed later. 72986fd29aSsetje# 73986fd29aSsetje$(OBJS_DIR)/kobj_bootflags.o := CPPFLAGS += -I$(SRC)/common 74986fd29aSsetje$(OBJS_DIR)/kobj.o := CPPFLAGS += -DMODDIR_SUFFIX=\"sparcv9\" 75986fd29aSsetje$(OBJS_DIR)/kobj.o := CPPFLAGS += -D_RELSEG 76986fd29aSsetje 777c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/krtld/%.s 787c478bd9Sstevel@tonic-gate $(COMPILE.s) -o $@ $< 797c478bd9Sstevel@tonic-gate 807c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/ml/%.s 817c478bd9Sstevel@tonic-gate $(COMPILE.s) -o $@ $< 827c478bd9Sstevel@tonic-gate 837c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/os/%.c 847c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 857c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 867c478bd9Sstevel@tonic-gate 877c478bd9Sstevel@tonic-gate$(OBJS_DIR)/%.o: $(UTSBASE)/sparc/syscall/%.c 887c478bd9Sstevel@tonic-gate $(COMPILE.c) -o $@ $< 897c478bd9Sstevel@tonic-gate $(CTFCONVERT_O) 907c478bd9Sstevel@tonic-gate 917c478bd9Sstevel@tonic-gate# 927c478bd9Sstevel@tonic-gate# Section 1b: Lint `object' build rules. 937c478bd9Sstevel@tonic-gate# 947c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/dtrace/%.c 957c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.c) $< $(LTAIL)) 967c478bd9Sstevel@tonic-gate 977c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/dtrace/%.s 987c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.s) $< $(LTAIL)) 997c478bd9Sstevel@tonic-gate 1007c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/io/%.c 1017c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.c) $< $(LTAIL)) 1027c478bd9Sstevel@tonic-gate 1037c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/fpu/%.c 1047c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.c) $< $(LTAIL)) 1057c478bd9Sstevel@tonic-gate 106*e7cbe64fSgw25295$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/zfs/%.c 107*e7cbe64fSgw25295 @($(LHEAD) $(LINT.c) $< $(LTAIL)) 108*e7cbe64fSgw25295 1097c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/fs/proc/%.c 1107c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.c) $< $(LTAIL)) 1117c478bd9Sstevel@tonic-gate 1127c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/krtld/%.c 1137c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.c) $< $(LTAIL)) 1147c478bd9Sstevel@tonic-gate 115986fd29aSsetje$(OBJS_DIR)/kobj_bootflags.ln := CPPFLAGS += -I$(SRC)/common 116986fd29aSsetje$(OBJS_DIR)/kobj.ln := CPPFLAGS += -DMODDIR_SUFFIX=\"sparcv9\" 117986fd29aSsetje$(OBJS_DIR)/kobj.ln := CPPFLAGS += -D_RELSEG 118986fd29aSsetje 1197c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/krtld/%.s 1207c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.s) $< $(LTAIL)) 1217c478bd9Sstevel@tonic-gate 1227c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/ml/%.s 1237c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.s) $< $(LTAIL)) 1247c478bd9Sstevel@tonic-gate 1257c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/os/%.c 1267c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.c) $< $(LTAIL)) 1277c478bd9Sstevel@tonic-gate 1287c478bd9Sstevel@tonic-gate$(LINTS_DIR)/%.ln: $(UTSBASE)/sparc/syscall/%.c 1297c478bd9Sstevel@tonic-gate @($(LHEAD) $(LINT.c) $< $(LTAIL)) 130