xref: /titanic_52/usr/src/psm/stand/boot/sparcv9/sun4v/Makefile (revision c1ecd8b9404ee0d96d93f02e82c441b9bb149a3d)
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# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
23# Use is subject to license terms.
24#
25#ident	"%Z%%M%	%I%	%E% SMI"
26#
27
28TOPDIR =	../../../../..
29
30include $(TOPDIR)/uts/Makefile.uts
31
32MODULE	= fs
33
34PLATLINKS	= SUNW,Sun-Fire-T200
35PLATLINKS	+= SUNW,Netra-CP3060
36PLATLINKS	+= SUNW,Netra-CP3260
37PLATLINKS	+= SUNW,Sun-Blade-T6300
38PLATLINKS	+= SUNW,Sun-Blade-T6320
39PLATLINKS	+= SUNW,SPARC-Enterprise-T5120
40PLATLINKS	+= SUNW,T5140
41PLATLINKS	+= SUNW,USBRDT-5240
42PLATLINKS	+= SUNW,Netra-T5220
43PLATLINKS	+= SUNW,Netra-T5440
44PLATLINKS	+= SUNW,USBRDT-5440
45
46LINKED_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%)
47LINKED_LIB_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/lib)
48LINKED_LIB_FS_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/lib/fs)
49
50all	:=	TARGET = all
51install	:=	TARGET = install
52clean	:=	TARGET = clean
53
54TARG_MACH =	sparcv9
55TARG_MACH_DIR =	sparcv9
56ARCHVERS =	v9
57PLATFORM =	sun4v
58ARCHMMU  =	sfmmu
59PROMVERS =	ieee1275
60ASFLAGS +=	$(sparcv9_XARCH)
61
62PLAT_C_SRC =	machdep.c
63ARCH_C_SRC =	sun4u_memlist.c sun4x_standalloc.c sun4dep.c
64ARCH_S_SRC =	sparcv9_subr.s
65SRT0_S =	sun4u_srt0.s
66INLINES =
67
68LDFLAGS +=	-L$(TOPDIR)/psm/stand/lib/promif/$(TARG_MACH)/$(PROMVERS)/common
69
70#
71# The following libraries are build in LIBPLAT_DIR
72#
73LIBPLAT_DIR =	$(TOPDIR)/psm/stand/lib/promif/$(TARG_MACH)/$(PROMVERS)/$(PLATFORM)
74LIBPLAT_LIBS =  libplat.a
75LIBPLAT_L_LIBS=	$(LIBPLAT_LIBS:lib%.a=llib-l%.ln)
76LIBPLAT_DEP = 	$(LIBPLAT_DIR)/$(LIBPLAT_LIBS)
77LIBPLAT_DEP_L =	$(LIBPLAT_DIR)/$(LIBPLAT_L_LIBS)
78
79#
80# Platform specific libraries
81#
82PSMLIBS +=      $(LIBPLAT_LIBS:lib%.a=-l%)
83PSMLIB_DIRS +=  $(LIBPLAT_DIR)
84
85
86#	MPSAS support
87MPSAS_BUILD:sh=		echo \\043
88$(MPSAS_BUILD)ARCHOPTS += -DMPSAS
89
90include ../Makefile.com
91
92CPPINCS		+= -I$(SRC)/uts/sun4u
93CPPINCS		+= -I$(ROOT)/usr/platform/sun4u/include
94
95# re-define ELFCONV for 4v--- sun4v can boot ELF directly
96ELFCONV = /usr/bin/cp
97
98# Don't need mapfile.inet for 4v inetboot
99NFS_MAPFILE = $(MACH_DIR)/mapfile
100
101#
102# Set the choice of compiler.
103
104include $(TOPDIR)/psm/Makefile.psm.64
105
106CFLAGS64	+= -xchip=ultra $(CCABS32)
107
108#
109# XXX this totally sucks since it effectively turns off -errchk=longptr64,
110# which we really should be using.
111#
112LINTFLAGS64 = $(LINTFLAGS) -Xarch=v9
113
114#
115# Cross-reference customization: include all boot-related source files.
116#
117STANDLIBDIR=	../../../../../stand/lib
118STANDSYSDIR=	../../../../../stand/sys
119PROMDIRS=	../../../../promif
120NAMESDIRS=	../../../lib/names/sparcv9 ../../../lib/names/sparc/common
121XRDIRS +=	../../sparc/common ../../common $(STANDLIBDIR) \
122		$(STANDSYSDIR) $(PROMDIRS) $(NAMESDIRS)
123XRPRUNE =	i86pc i386
124
125cscope.out tags: FRC
126	$(XREF) -x $@
127
128FRC:
129