xref: /titanic_44/usr/src/psm/stand/boot/sparcv9/sun4u/Makefile (revision a38ddfee9c8c6b6c5a2947ff52fd2338362a4444)
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
26TOPDIR =	../../../../..
27
28include $(TOPDIR)/uts/Makefile.uts
29
30MODULE	= fs
31
32PLATLINKS	= SUNW,Ultra-2
33PLATLINKS	+= SUNW,Ultra-250
34PLATLINKS	+= SUNW,Ultra-4
35PLATLINKS	+= SUNW,Ultra-Enterprise
36PLATLINKS	+= SUNW,Ultra-Enterprise-10000
37PLATLINKS	+= SUNW,UltraSPARC-IIi-Netract
38PLATLINKS	+= SUNW,UltraSPARC-IIe-NetraCT-40
39PLATLINKS	+= SUNW,UltraSPARC-IIe-NetraCT-60
40PLATLINKS	+= SUNW,Sun-Blade-100
41PLATLINKS	+= SUNW,Sun-Blade-1000
42PLATLINKS	+= SUNW,Sun-Blade-1500
43PLATLINKS	+= SUNW,Sun-Blade-2500
44PLATLINKS	+= SUNW,A70
45PLATLINKS	+= SUNW,Sun-Fire-V445
46PLATLINKS	+= SUNW,Sun-Fire-V215
47PLATLINKS	+= SUNW,Sun-Fire
48PLATLINKS	+= SUNW,Sun-Fire-V240
49PLATLINKS	+= SUNW,Sun-Fire-V250
50PLATLINKS	+= SUNW,Sun-Fire-V440
51PLATLINKS	+= SUNW,Sun-Fire-280R
52PLATLINKS	+= SUNW,Sun-Fire-15000
53PLATLINKS	+= SUNW,Sun-Fire-880
54PLATLINKS	+= SUNW,Sun-Fire-480R
55PLATLINKS	+= SUNW,Sun-Fire-V890
56PLATLINKS	+= SUNW,Sun-Fire-V490
57PLATLINKS	+= SUNW,Serverblade1
58PLATLINKS	+= SUNW,Netra-T12
59PLATLINKS	+= SUNW,Netra-T4
60PLATLINKS	+= SUNW,Netra-CP2300
61PLATLINKS	+= SUNW,Netra-CP3010
62PLATLINKS	+= SUNW,SPARC-Enterprise
63PLATLINKS	+= TAD,SPARCLE
64
65LINKED_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%)
66LINKED_LIB_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/lib)
67LINKED_LIB_FS_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/lib/fs)
68
69all	:=	TARGET = all
70install	:=	TARGET = install
71clean	:=	TARGET = clean
72
73TARG_MACH =	sparcv9
74TARG_MACH_DIR =	sparcv9
75ARCHVERS =	v9
76PLATFORM =	sun4u
77ARCHMMU  =	sfmmu
78PROMVERS =	ieee1275
79ASFLAGS +=	$(sparcv9_XARCH)
80
81PLAT_C_SRC =	machdep.c
82ARCH_C_SRC =	sun4u_memlist.c sun4x_standalloc.c sun4dep.c
83ARCH_S_SRC =	sparcv9_subr.s
84SRT0_S =	sun4u_srt0.s
85INLINES =
86
87LDFLAGS +=	-L$(TOPDIR)/psm/stand/lib/promif/$(TARG_MACH)/$(PROMVERS)/common
88
89#
90# The following libraries are build in LIBPLAT_DIR
91#
92LIBPLAT_DIR =	$(TOPDIR)/psm/stand/lib/promif/$(TARG_MACH)/$(PROMVERS)/$(PLATFORM)
93LIBPLAT_LIBS =  libplat.a
94LIBPLAT_L_LIBS=	$(LIBPLAT_LIBS:lib%.a=llib-l%.ln)
95LIBPLAT_DEP = 	$(LIBPLAT_DIR)/$(LIBPLAT_LIBS)
96LIBPLAT_DEP_L =	$(LIBPLAT_DIR)/$(LIBPLAT_L_LIBS)
97
98#
99# Platform specific libraries
100#
101PSMLIBS +=      $(LIBPLAT_LIBS:lib%.a=-l%)
102PSMLIB_DIRS +=  $(LIBPLAT_DIR)
103
104
105#	MPSAS support
106MPSAS_BUILD:sh=		echo \\043
107$(MPSAS_BUILD)ARCHOPTS += -DMPSAS
108
109include ../Makefile.com
110
111# re-define ELFCONV for 4u--- sun4u can boot ELF directly
112ELFCONV = /usr/bin/cp
113
114# Don't need mapfile.inet for 4u inetboot
115NFS_MAPFILE = $(MACH_DIR)/mapfile
116
117#
118# Set the choice of compiler.
119
120include $(TOPDIR)/psm/Makefile.psm.64
121
122CFLAGS64	+= -xchip=ultra $(CCABS32)
123
124#
125# XXX this totally sucks since it effectively turns off -errchk=longptr64,
126# which we really should be using.
127#
128LINTFLAGS64 = $(LINTFLAGS) -m64
129
130#
131# Cross-reference customization: include all boot-related source files.
132#
133STANDLIBDIR=	../../../../../stand/lib
134STANDSYSDIR=	../../../../../stand/sys
135PROMDIRS=	../../../../promif
136NAMESDIRS=	../../../lib/names/sparcv9 ../../../lib/names/sparc/common
137XRDIRS +=	../../sparc/common ../../common $(STANDLIBDIR) \
138		$(STANDSYSDIR) $(PROMDIRS) $(NAMESDIRS)
139XRPRUNE =	i86pc i386
140
141cscope.out tags: FRC
142	$(XREF) -x $@
143
144FRC:
145