Makefile revision 9ef7884d729f1f09cb82e5c2f57d12cb9f4c1fee
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# CDDL HEADER START
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# The contents of this file are subject to the terms of the
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# Common Development and Distribution License (the "License").
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# You may not use this file except in compliance with the License.
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# or http://www.opensolaris.org/os/licensing.
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# See the License for the specific language governing permissions
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# and limitations under the License.
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# When distributing Covered Code, include this CDDL HEADER in each
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# If applicable, add the following below this CDDL HEADER, with the
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# fields enclosed by brackets "[]" replaced with your own identifying
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# information: Portions Copyright [yyyy] [name of copyright owner]
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# CDDL HEADER END
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# Use is subject to license terms.
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#ident "%Z%%M% %I% %E% SMI"
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncTOPDIR = ../../../../..
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncinclude $(TOPDIR)/uts/Makefile.uts
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncMODULE = fs
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncPLATLINKS = SUNW,Sun-Fire-T200
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncPLATLINKS += SUNW,Netra-CP3060
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncPLATLINKS += SUNW,Sun-Blade-T6300
188ea1a2ae27e2575ff4361c41b368f29128a8c5vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncLINKED_DIRS = $(PLATLINKS:%=$(USR_PLAT_DIR)/%)
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncLINKED_LIB_DIRS = $(PLATLINKS:%=$(USR_PLAT_DIR)/%/lib)
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncLINKED_LIB_FS_DIRS = $(PLATLINKS:%=$(USR_PLAT_DIR)/%/lib/fs)
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncall := TARGET = all
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncinstall := TARGET = install
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncclean := TARGET = clean
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncTARG_MACH = sparcv9
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncTARG_MACH_DIR = sparcv9
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncARCHVERS = v9
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncPLATFORM = sun4v
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncARCHMMU = sfmmu
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncPROMVERS = ieee1275
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncASFLAGS += $(sparcv9_XARCH)
188ea1a2ae27e2575ff4361c41b368f29128a8c5vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncPLAT_C_SRC = machdep.c
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncARCH_C_SRC = sun4u_memlist.c sun4x_standalloc.c sun4dep.c
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncARCH_S_SRC = sparcv9_subr.s
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncSRT0_S = sun4u_srt0.s
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncINLINES =
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncLDFLAGS += -L$(TOPDIR)/psm/stand/lib/promif/$(TARG_MACH)/$(PROMVERS)/common
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# The following libraries are build in LIBPLAT_DIR
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncLIBPLAT_DIR = $(TOPDIR)/psm/stand/lib/promif/$(TARG_MACH)/$(PROMVERS)/$(PLATFORM)
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncLIBPLAT_LIBS = libplat.a
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncLIBPLAT_L_LIBS= $(LIBPLAT_LIBS:lib%.a=llib-l%.ln)
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncLIBPLAT_DEP = $(LIBPLAT_DIR)/$(LIBPLAT_LIBS)
188ea1a2ae27e2575ff4361c41b368f29128a8c5vboxsyncLIBPLAT_DEP_L = $(LIBPLAT_DIR)/$(LIBPLAT_L_LIBS)
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync# Platform specific libraries
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync#
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncPSMLIBS += $(LIBPLAT_LIBS:lib%.a=-l%)
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsyncPSMLIB_DIRS += $(LIBPLAT_DIR)
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
0b5a8573f70560f0fd30c01151fcdc0e71984276vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync# MPSAS support
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncMPSAS_BUILD:sh= echo \\043
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync$(MPSAS_BUILD)ARCHOPTS += -DMPSAS
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncinclude ../Makefile.com
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncCPPINCS += -I$(SRC)/uts/sun4u
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncCPPINCS += -I$(ROOT)/usr/platform/sun4u/include
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync# re-define ELFCONV for 4v--- sun4v can boot ELF directly
d2c6b2e8826a5ef34170fef0c72c3fc7c5c1b46avboxsyncELFCONV = /usr/bin/cp
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync# Don't need mapfile.inet for 4v inetboot
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncNFS_MAPFILE = $(MACH_DIR)/mapfile
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync#
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync# Set the choice of compiler.
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncinclude $(TOPDIR)/psm/Makefile.psm.64
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncCFLAGS64 += -xchip=ultra $(CCABS32)
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync#
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync# XXX this totally sucks since it effectively turns off -errchk=longptr64,
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync# which we really should be using.
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync#
188ea1a2ae27e2575ff4361c41b368f29128a8c5vboxsyncLINTFLAGS64 = $(LINTFLAGS) -Xarch=v9
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync#
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync# Cross-reference customization: include all boot-related source files.
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync#
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncSTANDLIBDIR= ../../../../../stand/lib
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncSTANDSYSDIR= ../../../../../stand/sys
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncPROMDIRS= ../../../../promif
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncNAMESDIRS= ../../../lib/names/sparcv9 ../../../lib/names/sparc/common
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncXRDIRS += ../../sparc/common ../../common $(STANDLIBDIR) \
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync $(STANDSYSDIR) $(PROMDIRS) $(NAMESDIRS)
188ea1a2ae27e2575ff4361c41b368f29128a8c5vboxsyncXRPRUNE = i86pc i386
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsynccscope.out tags: FRC
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync $(XREF) -x $@
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsyncFRC:
afa761a969c8883e5ea370e898d40ce053fbcb22vboxsync