1d24234c2SJerry Gilliam#
2d24234c2SJerry Gilliam# CDDL HEADER START
3d24234c2SJerry Gilliam#
4d24234c2SJerry Gilliam# The contents of this file are subject to the terms of the
5d24234c2SJerry Gilliam# Common Development and Distribution License (the "License").
6d24234c2SJerry Gilliam# You may not use this file except in compliance with the License.
7d24234c2SJerry Gilliam#
8d24234c2SJerry Gilliam# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9d24234c2SJerry Gilliam# or http://www.opensolaris.org/os/licensing.
10d24234c2SJerry Gilliam# See the License for the specific language governing permissions
11d24234c2SJerry Gilliam# and limitations under the License.
12d24234c2SJerry Gilliam#
13d24234c2SJerry Gilliam# When distributing Covered Code, include this CDDL HEADER in each
14d24234c2SJerry Gilliam# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15d24234c2SJerry Gilliam# If applicable, add the following below this CDDL HEADER, with the
16d24234c2SJerry Gilliam# fields enclosed by brackets "[]" replaced with your own identifying
17d24234c2SJerry Gilliam# information: Portions Copyright [yyyy] [name of copyright owner]
18d24234c2SJerry Gilliam#
19d24234c2SJerry Gilliam# CDDL HEADER END
20d24234c2SJerry Gilliam#
21d24234c2SJerry Gilliam#
22d24234c2SJerry Gilliam# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
23d24234c2SJerry Gilliam# Use is subject to license terms.
249cb0a1d4SPeter Tribble# Copyright 2019 Peter Tribble.
25d24234c2SJerry Gilliam#
26d24234c2SJerry Gilliam# psm/stand/boot/sparcv9/ieee1275/sun4u/Makefile
27d24234c2SJerry Gilliam#
28d24234c2SJerry Gilliam#
29d24234c2SJerry GilliamTOPDIR =	../../../../../../..
30d24234c2SJerry Gilliam
31d24234c2SJerry Gilliaminclude $(TOPDIR)/Makefile.master
32d24234c2SJerry Gilliaminclude $(TOPDIR)/lib/Makefile.lib
33d24234c2SJerry Gilliaminclude $(TOPDIR)/psm/stand/lib/Makefile.lib
34d24234c2SJerry Gilliaminclude $(TOPDIR)/psm/Makefile.psm.64
35d24234c2SJerry Gilliam
36*d17be682SRichard LoweCFLAGS64	+= -xchip=ultra
37d24234c2SJerry Gilliam
38d24234c2SJerry GilliamPLATSUN4DIR =	$(TOPDIR)/psm/promif/ieee1275/sun4
39d24234c2SJerry GilliamSYSDIR =	$(TOPDIR)/uts
40d24234c2SJerry Gilliam
41d24234c2SJerry GilliamLIBPLAT =	libplat.a
42d24234c2SJerry GilliamLINTLIBPLAT =	llib-lplat.ln
43d24234c2SJerry Gilliam
44d24234c2SJerry GilliamPLAT_PFILES =
45d24234c2SJerry Gilliam
46d24234c2SJerry GilliamPLAT_PSUN4FILES =		\
47d24234c2SJerry Gilliam	prom_alloc.c		\
48d24234c2SJerry Gilliam	prom_cpuctl.c		\
49d24234c2SJerry Gilliam	prom_fio.c		\
50d24234c2SJerry Gilliam	prom_getunum.c		\
51d24234c2SJerry Gilliam	prom_heartbeat.c	\
52d24234c2SJerry Gilliam	prom_idprom.c		\
53d24234c2SJerry Gilliam	prom_init.c		\
54d24234c2SJerry Gilliam	prom_macaddr.c		\
55d24234c2SJerry Gilliam	prom_map.c		\
56d24234c2SJerry Gilliam	prom_mem.c		\
57d24234c2SJerry Gilliam	prom_mmu.c		\
58d24234c2SJerry Gilliam	prom_retain.c		\
59d24234c2SJerry Gilliam	prom_sparc.c		\
60d24234c2SJerry Gilliam	prom_vername.c
61d24234c2SJerry Gilliam
62d24234c2SJerry GilliamKARCH =		sun4u
63d24234c2SJerry GilliamMMU =		sfmmu
64d24234c2SJerry Gilliam
65d24234c2SJerry GilliamOBJSDIR =	objs
66d24234c2SJerry Gilliam
67d24234c2SJerry GilliamPLAT_POBJ =	$(PLAT_PFILES:%.c=$(OBJSDIR)/%.o)
68d24234c2SJerry GilliamPLAT_PSUN4OBJ =	$(PLAT_PSUN4FILES:%.c=$(OBJSDIR)/%.o)
69d24234c2SJerry GilliamOBJS =		$(PLAT_POBJ) $(PLAT_PSUN4OBJ)
70d24234c2SJerry GilliamL_OBJS =	$(OBJS:%.o=%.ln)
719cb0a1d4SPeter TribbleL_SRCS =	$(PLAT_PFILES:%=$(PLATDIR)/%)
729cb0a1d4SPeter TribbleL_SRCS +=	$(PLAT_PSUN4FILES:%=$(PLATSUN4DIR)/%)
73d24234c2SJerry Gilliam
74d24234c2SJerry GilliamARCHOPTS=	-Dsun4u
755d9d9091SRichard LoweASFLAGS =	-D__STDC__ -D_BOOT -D_ASM
76d24234c2SJerry GilliamCPPDEFS	=	$(ARCHOPTS) -D$(KARCH) -D_BOOT -D_KERNEL -D_MACHDEP
77d24234c2SJerry GilliamCPPINCS =	-I. -I$(SYSDIR)/sun4 -I$(SYSDIR)/$(KARCH) -I$(SYSDIR)/$(MMU) \
78d24234c2SJerry Gilliam		-I$(SYSDIR)/sparc/v9 -I$(SYSDIR)/sparc \
79d24234c2SJerry Gilliam		-I$(SYSDIR)/sun -I$(SYSDIR)/common
80d24234c2SJerry GilliamCPPFLAGS=	$(CPPDEFS) $(CPPINCS) $(CPPFLAGS.master)
81d24234c2SJerry GilliamCFLAGS +=	$(CCVERBOSE)
82d24234c2SJerry Gilliam
83d24234c2SJerry Gilliam.KEEP_STATE:
84d24234c2SJerry Gilliam
85d24234c2SJerry Gilliam.PARALLEL:	$(OBJS) $(L_OBJS)
86d24234c2SJerry Gilliam
87d24234c2SJerry Gilliamall install: $(LIBPLAT)
88d24234c2SJerry Gilliam
89d24234c2SJerry Gilliamlint: $(LINTLIBPLAT)
90d24234c2SJerry Gilliam
91d24234c2SJerry Gilliamclean:
92d24234c2SJerry Gilliam	$(RM) $(OBJS) $(L_OBJS)
93d24234c2SJerry Gilliam
94d24234c2SJerry Gilliamclobber: clean
95b6805bf7SGordon Ross	$(RM) $(LIBPLAT) $(LINTLIBPLAT)
96d24234c2SJerry Gilliam
97d24234c2SJerry Gilliam$(LIBPLAT): $(OBJSDIR) .WAIT $(OBJS)
98d24234c2SJerry Gilliam	$(BUILD.AR) $(OBJS)
99d24234c2SJerry Gilliam
100d24234c2SJerry Gilliam$(LINTLIBPLAT): $(OBJSDIR) .WAIT $(L_OBJS)
101d24234c2SJerry Gilliam	@$(ECHO) "\nlint library construction:" $@
102d24234c2SJerry Gilliam	@$(LINT.lib) -o plat $(L_SRCS)
103d24234c2SJerry Gilliam
104d24234c2SJerry Gilliam$(OBJSDIR):
105d24234c2SJerry Gilliam	-@[ -d $@ ] || mkdir $@
106d24234c2SJerry Gilliam
107d24234c2SJerry Gilliam#
108d24234c2SJerry Gilliam# build rules using standard library object subdirectory
109d24234c2SJerry Gilliam#
110d24234c2SJerry Gilliam
111d24234c2SJerry Gilliam$(OBJSDIR)/%.o: $(PLATDIR)/%.c
112d24234c2SJerry Gilliam	$(COMPILE.c) -o $@ $<
113d24234c2SJerry Gilliam	$(POST_PROCESS_O)
114d24234c2SJerry Gilliam
115d24234c2SJerry Gilliam$(OBJSDIR)/%.o: $(PLATDIR)/%.s
116d24234c2SJerry Gilliam	$(COMPILE.s) -o $@ $<
117d24234c2SJerry Gilliam	$(POST_PROCESS_O)
118d24234c2SJerry Gilliam
119d24234c2SJerry Gilliam$(OBJSDIR)/%.o: $(PLATSUN4DIR)/%.c
120d24234c2SJerry Gilliam	$(COMPILE.c) -o $@ $<
121d24234c2SJerry Gilliam	$(POST_PROCESS_O)
122d24234c2SJerry Gilliam
123d24234c2SJerry Gilliam$(OBJSDIR)/%.o: $(PLATSUN4DIR)/%.s
124d24234c2SJerry Gilliam	$(COMPILE.s) -o $@ $<
125d24234c2SJerry Gilliam	$(POST_PROCESS_O)
126d24234c2SJerry Gilliam
127d24234c2SJerry Gilliam$(OBJSDIR)/%.ln: $(PLATDIR)/%.c
128d24234c2SJerry Gilliam	@($(LHEAD) $(LINT.c) $< $(LTAIL))
129d24234c2SJerry Gilliam	@$(MV) $(@F) $@
130d24234c2SJerry Gilliam
131d24234c2SJerry Gilliam$(OBJSDIR)/%.ln: $(PLATDIR)/%.s
132d24234c2SJerry Gilliam	@($(LHEAD) $(LINT.s) $< $(LTAIL))
133d24234c2SJerry Gilliam	@$(MV) $(@F) $@
134d24234c2SJerry Gilliam
135d24234c2SJerry Gilliam$(OBJSDIR)/%.ln: $(PLATSUN4DIR)/%.c
136d24234c2SJerry Gilliam	@($(LHEAD) $(LINT.c) $< $(LTAIL))
137d24234c2SJerry Gilliam	@$(MV) $(@F) $@
138d24234c2SJerry Gilliam
139d24234c2SJerry Gilliam$(OBJSDIR)/%.ln: $(PLATSUN4DIR)/%.s
140d24234c2SJerry Gilliam	@($(LHEAD) $(LINT.s) $< $(LTAIL))
141d24234c2SJerry Gilliam	@$(MV) $(@F) $@
142