xref: /titanic_52/usr/src/psm/stand/boot/sparcv9/sun4u/Makefile (revision f498645a3eecf2ddd304b4ea9c7f1b4c155ff79e)
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, Version 1.0 only
6# (the "License").  You may not use this file except in compliance
7# with the License.
8#
9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10# or http://www.opensolaris.org/os/licensing.
11# See the License for the specific language governing permissions
12# and limitations under the License.
13#
14# When distributing Covered Code, include this CDDL HEADER in each
15# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16# If applicable, add the following below this CDDL HEADER, with the
17# fields enclosed by brackets "[]" replaced with your own identifying
18# information: Portions Copyright [yyyy] [name of copyright owner]
19#
20# CDDL HEADER END
21#
22#
23# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26#ident	"%Z%%M%	%I%	%E% SMI"
27#
28
29TOPDIR =	../../../../..
30
31include $(TOPDIR)/uts/Makefile.uts
32
33MODULE	= fs
34
35PLATLINKS	= SUNW,Ultra-2
36PLATLINKS	+= SUNW,Ultra-250
37PLATLINKS	+= SUNW,Ultra-4
38PLATLINKS	+= SUNW,Ultra-Enterprise
39PLATLINKS	+= SUNW,Ultra-Enterprise-10000
40PLATLINKS	+= SUNW,UltraSPARC-IIi-Netract
41PLATLINKS	+= SUNW,UltraSPARC-IIe-NetraCT-40
42PLATLINKS	+= SUNW,UltraSPARC-IIe-NetraCT-60
43PLATLINKS	+= SUNW,Sun-Blade-100
44PLATLINKS	+= SUNW,Sun-Blade-1000
45PLATLINKS	+= SUNW,Sun-Blade-1500
46PLATLINKS	+= SUNW,Sun-Blade-2500
47PLATLINKS	+= SUNW,A70
48PLATLINKS	+= SUNW,Sun-Fire-V445
49PLATLINKS	+= SUNW,Sun-Fire-V215
50PLATLINKS	+= SUNW,Sun-Fire
51PLATLINKS	+= SUNW,Sun-Fire-V240
52PLATLINKS	+= SUNW,Sun-Fire-V250
53PLATLINKS	+= SUNW,Sun-Fire-V440
54PLATLINKS	+= SUNW,Sun-Fire-280R
55PLATLINKS	+= SUNW,Sun-Fire-15000
56PLATLINKS	+= SUNW,Sun-Fire-880
57PLATLINKS	+= SUNW,Sun-Fire-480R
58PLATLINKS	+= SUNW,Sun-Fire-V890
59PLATLINKS	+= SUNW,Sun-Fire-V490
60PLATLINKS	+= SUNW,Serverblade1
61PLATLINKS	+= SUNW,Netra-T12
62PLATLINKS	+= SUNW,Netra-T4
63PLATLINKS	+= SUNW,Netra-CP2300
64PLATLINKS	+= SUNW,Netra-CP3010
65
66LINKED_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%)
67LINKED_LIB_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/lib)
68LINKED_LIB_FS_DIRS	= $(PLATLINKS:%=$(USR_PLAT_DIR)/%/lib/fs)
69
70all	:=	TARGET = all
71install	:=	TARGET = install
72clean	:=	TARGET = clean
73
74TARG_MACH =	sparcv9
75TARG_MACH_DIR =	sparcv9
76ARCHVERS =	v9
77PLATFORM =	sun4u
78ARCHMMU  =	sfmmu
79PROMVERS =	ieee1275
80ASFLAGS +=	$(sparcv9_XARCH)
81
82PLAT_C_SRC =	machdep.c
83ARCH_C_SRC =	sun4u_memlist.c sun4x_standalloc.c sun4dep.c
84ARCH_S_SRC =	sparcv9_subr.s
85SRT0_S =	sun4u_srt0.s
86INLINES =
87
88LDFLAGS +=	-L$(TOPDIR)/psm/stand/lib/promif/$(TARG_MACH)/$(PROMVERS)/common
89
90#
91# The following libraries are build in LIBPLAT_DIR
92#
93LIBPLAT_DIR =	$(TOPDIR)/psm/stand/lib/promif/$(TARG_MACH)/$(PROMVERS)/$(PLATFORM)
94LIBPLAT_LIBS =  libplat.a
95LIBPLAT_L_LIBS=	$(LIBPLAT_LIBS:lib%.a=llib-l%.ln)
96LIBPLAT_DEP = 	$(LIBPLAT_DIR)/$(LIBPLAT_LIBS)
97LIBPLAT_DEP_L =	$(LIBPLAT_DIR)/$(LIBPLAT_L_LIBS)
98
99#
100# Platform specific libraries
101#
102PSMLIBS +=      $(LIBPLAT_LIBS:lib%.a=-l%)
103PSMLIB_DIRS +=  $(LIBPLAT_DIR)
104
105
106#	MPSAS support
107MPSAS_BUILD:sh=		echo \\043
108$(MPSAS_BUILD)ARCHOPTS += -DMPSAS
109
110include ../Makefile.com
111
112# re-define ELFCONV for 4u--- sun4u can boot ELF directly
113ELFCONV = /usr/bin/cp
114
115# Don't need mapfile.inet for 4u inetboot
116NFS_MAPFILE = $(MACH_DIR)/mapfile
117
118#
119# Set the choice of compiler.
120
121include $(TOPDIR)/psm/Makefile.psm.64
122
123CFLAGS64	+= -xchip=ultra $(CCABS32)
124
125#
126# XXX this totally sucks since it effectively turns off -errchk=longptr64,
127# which we really should be using.
128#
129LINTFLAGS64 = $(LINTFLAGS) -Xarch=v9
130
131#
132# Cross-reference customization: include all boot-related source files.
133#
134STANDLIBDIR=	../../../../../stand/lib
135STANDSYSDIR=	../../../../../stand/sys
136PROMDIRS=	../../../../promif
137NAMESDIRS=	../../../lib/names/sparcv9 ../../../lib/names/sparc/common
138XRDIRS +=	../../sparc/common ../../common $(STANDLIBDIR) \
139		$(STANDSYSDIR) $(PROMDIRS) $(NAMESDIRS)
140XRPRUNE =	i86pc i386
141
142cscope.out tags: FRC
143	$(XREF) -x $@
144
145FRC:
146