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.
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.
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]
22 # Copyright 2006 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
26 # This makefile drives the production of the zulunvm
29 # sun4u implementation architecture dependent
33 # Path to the base of the uts directory tree (usually /usr/src/uts).
38 # Define the module and object file sets.
41 OBJECTS
= $(ZULUVM_OBJS
:%=$(OBJS_DIR
)/%)
42 LINTS
= $(ZULUVM_OBJS
:%.o
=$(LINTS_DIR
)/%.ln
)
43 ROOTMODULE
= $(ROOT_PSM_MISC_DIR
)/$(MODULE
)
46 # Include common rules.
48 include $(UTSBASE
)/sun4u
/Makefile.sun4u
51 # Override defaults to build a unique, local modstubs.o.
54 $(MODSTUBS_O
) := AS_CPPFLAGS
+= -DZULU_MISC_MODULE
56 CLEANFILES
+= $(MODSTUBS_O
)
61 ALL_TARGET
= $(BINARY
)
62 LINT_TARGET
= $(MODULE
).lint
63 INSTALL_TARGET
= $(BINARY
) $(ROOTMODULE
)
65 ZULUVM_OFFSETS
= $(UTSBASE
)/sun4u
/zuluvm
/zuluvm_offsets.in
66 ZULUVM_OFFSETS_H
= $(OBJS_DIR
)/zuluvm_offsets.h
68 ZULUVM_STATS
= -DZULUVM_STATS
71 # We turn off tnf probes for opt builds.
73 PROBE_FLAGS_OBJ64
= -DNPROBE
76 # lint pass one enforcement
78 CFLAGS
+= $(CCVERBOSE
) $(ZULUVM_STATS
) $(PROBE_FLAGS_
$(BUILD_TYPE
))
79 ASFLAGS
+= $(ZULUVM_STATS
)
80 LINTFLAGS
+= -I
$(OBJS_DIR
)
83 # For now, disable these lint checks; maintainers should endeavor
84 # to investigate and remove these for maximum lint coverage.
85 # Please do not carry these forward to new Makefiles.
87 LINTTAGS
+= -erroff
=E_BAD_PTR_CAST_ALIGN
88 LINTTAGS
+= -erroff
=E_ASSIGN_NARROW_CONV
90 CERRWARN
+= -_gcc
=-Wno-uninitialized
93 # Default build targets.
103 clobber: $(CLOBBER_DEPS
)
107 modlintlib
: $(MODLINTLIB_DEPS
) lint64
109 clean.lint
: $(CLEAN_LINT_DEPS
)
111 install: $(INSTALL_DEPS
)
114 # Special rules for generating assym.h for inclusion in assembly files
116 #$(DSF_DIR)/$(OBJS_DIR)/assym.h: FRC
117 # @cd $(DSF_DIR); $(MAKE) all.targ
119 AS_INC_PATH
+= -I
$(OBJS_DIR
)
121 ZULUVM_DEPS
+= zulu_hat_asm.o zulu_asm.o zulu_asm.ln zulu_hat_asm.ln
123 CLEANFILES
+= $(ZULUVM_OFFSETS_H
) $(ZULUVM_OFFSETS_OUT
)
125 $(ZULUVM_DEPS
:%=$(OBJS_DIR
)/%): $(ZULUVM_OFFSETS_H
)
127 $(ZULUVM_OFFSETS_H
): $(ZULUVM_OFFSETS
)
128 $(OFFSETS_CREATE
) <$(ZULUVM_OFFSETS
) >$@
131 # Include common targets.
133 include $(UTSBASE
)/sun4u
/Makefile.targ