xref: /titanic_52/usr/src/uts/sun4u/starcat/Makefile.rules (revision bdfc6d18da790deeec2e0eb09c625902defe2498)
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 2004 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26# ident	"%Z%%M%	%I%	%E% SMI"
27#
28#	This Makefile defines the build rules for the directory
29#	uts/sun4u/starcat and its children.
30#
31
32#
33# inline support for DR.
34#
35
36IL_CPP=$(CPP) -P -DINLINE -D_ASM $(AS_INC_PATH) \
37	$(CPP_DEFS) $(ALWAYS_DEFS) $(ALL_DEFS) $(CONFIG_DEFS)
38
39#
40#	Section 1a: C object build rules
41#
42
43DRMACH_IL=$(OBJS_DIR)/drmach.il
44
45$(OBJS_DIR)/drmach.o	:= CC_XARCH_32 = -xarch=v8plusa
46$(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/starcat/io/%.c $(DRMACH_IL)
47	$(COMPILE.c) $(DRMACH_IL) -o $@ $<
48	$(CTFCONVERT_O)
49
50$(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/starcat/os/%.c
51	$(COMPILE.c) -o $@ $<
52	$(CTFCONVERT_O)
53
54$(OBJS_DIR)/%.o:		$(UTSBASE)/sun4u/starcat/ml/%.s
55	$(COMPILE.s) -o $@ $<
56
57STARCAT_IO=$(UTSBASE)/sun4u/starcat/io
58
59CLEANFILES += $(STARCAT_IO)/drmach_err.c
60
61$(STARCAT_IO)/drmach_err.c: $(SBDGENERR) $(SBD_IOCTL)
62	$(RM) $@
63	$(SBDGENERR) ESTC <$(SBD_IOCTL) >$@
64
65# inline stuff
66
67CLEANFILES += $(DRMACH_IL)
68
69$(DRMACH_IL):		$(UTSBASE)/sun4u/starcat/ml/drmach.il.cpp
70	$(IL_CPP) $(UTSBASE)/sun4u/starcat/ml/drmach.il.cpp > $@
71
72#
73#	Section 1b: Lint object build rules
74#
75
76$(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/starcat/os/%.c
77	@($(LHEAD) $(LINT.c) $< $(LTAIL))
78
79$(LINTS_DIR)/drmach.ln		:= LINTFLAGS += -I../sys
80$(LINTS_DIR)/sc_gptwoctfg.ln	:= LINTFLAGS += -I../sys
81$(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/starcat/io/%.c
82	@($(LHEAD) $(LINT.c) $< $(LTAIL))
83
84$(LINTS_DIR)/%.ln:		$(UTSBASE)/sun4u/starcat/ml/%.s
85	@($(LHEAD) $(LINT.s) $< $(LTAIL))
86