Makefile revision 24fe0b3bf671e123467ce1df0b67cadd3614c8e4
2128N/A#
2128N/A# CDDL HEADER START
2128N/A#
2128N/A# The contents of this file are subject to the terms of the
2128N/A# Common Development and Distribution License (the "License").
2128N/A# You may not use this file except in compliance with the License.
2128N/A#
2128N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
2128N/A# or http://www.opensolaris.org/os/licensing.
2128N/A# See the License for the specific language governing permissions
2128N/A# and limitations under the License.
2128N/A#
2128N/A# When distributing Covered Code, include this CDDL HEADER in each
2128N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
2128N/A# If applicable, add the following below this CDDL HEADER, with the
2128N/A# fields enclosed by brackets "[]" replaced with your own identifying
2128N/A# information: Portions Copyright [yyyy] [name of copyright owner]
2128N/A#
2128N/A# CDDL HEADER END
2128N/A#
5680N/A
5680N/A#
5591N/A# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
2128N/A# Use is subject to license terms.
5680N/A#
2923N/A
2128N/A#
2128N/A# This makefile drives the production of the sun4u UltraSPARC driver
2128N/A# module.
6031N/A#
2128N/A# sun4u implementation architecture dependent
6031N/A#
5591N/A
2128N/A#
2128N/A# Path to the base of the uts directory tree (usually /usr/src/uts).
2128N/A#
6031N/AUTSBASE = ../..
6031N/A
5591N/A#
6031N/A# Define the module and object file sets.
5591N/A#
5680N/AMODULE = SUNW,UltraSPARC-III
5680N/AOBJECTS = $(CHEETAH_OBJS:%=$(OBJS_DIR)/%)
5680N/ALINTS = $(CHEETAH_OBJS:%.o=$(LINTS_DIR)/%.ln)
5680N/AROOTMODULE = $(ROOT_PSM_CPU_DIR)/$(MODULE)
2128N/AROOTSOFTLINKS = $(SOFTLINKS:%=$(ROOT_PSM_CPU_DIR)/%)
2128N/A
5680N/ACPU_DIR = .
5680N/AHERE = ../cheetah
5680N/A
2128N/A#
2128N/A# Include common rules.
2128N/A#
2128N/Ainclude $(UTSBASE)/sun4u/Makefile.sun4u
2128N/A
2128N/A#
2128N/A# Override defaults
2128N/A#
2128N/ACLEANFILES += $(CPULIB) $(SYM_MOD)
2128N/A
2128N/A#
2128N/A# Define targets
2128N/A#
2128N/AALL_TARGET = $(SYM_MOD)
2128N/ALINT_TARGET = $(MODULE).lint
2128N/AINSTALL_TARGET = def $(BINARY) $(ROOTMODULE) $(ROOTSOFTLINKS)
2128N/A
2128N/A#
2128N/A# lint pass one enforcement
2128N/A#
2128N/ACFLAGS += $(CCVERBOSE)
2128N/A
2128N/A#
2128N/A# cpu-module-specific flags
2128N/A#
2128N/ACPPFLAGS += -DCPU_MODULE -DCHEETAH
2128N/AAS_CPPFLAGS += -DCPU_MODULE -DCHEETAH
2128N/A
2128N/A#
2128N/A# Default build targets.
6031N/A#
2128N/A.KEEP_STATE:
5795N/A
5795N/Adef: $(DEF_DEPS)
5795N/A
5795N/Aall: $(ALL_DEPS)
5795N/A
5795N/Aclean: $(CLEAN_DEPS)
5795N/A
5795N/Aclobber: $(CLOBBER_DEPS)
5795N/A
5795N/Alint: $(LINT_DEPS)
5795N/A
5795N/Amodlintlib: $(MODLINTLIB_DEPS)
3817N/A
5795N/Aclean.lint: $(CLEAN_LINT_DEPS)
3817N/A
3817N/Ainstall: $(INSTALL_DEPS)
3817N/A
3817N/A$(CPULIB): $(BINARY)
3817N/A $(BUILD.SO) $(BINARY)
$(SYM_MOD): $(UNIX_O) $(CPULIB)
@echo "resolving symbols against unix.o"
@(cd $(UNIX_DIR); pwd; \
CPU_DIR=$(HERE) SYM_MOD=$(HERE)/$(SYM_MOD) $(MAKE) symcheck)
$(ROOTSOFTLINKS): $(ROOTMODULE)
$(RM) $@; $(SYMLINK) $(MODULE) $@
# Include common targets.
#
include $(UTSBASE)/sun4u/Makefile.targ
#
# For now, disable these lint checks; maintainers should endeavor
# to investigate and remove these for maximum lint coverage.
# Please do not carry these forward to new Makefiles.
#
LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
LINTTAGS += -erroff=E_STATIC_UNUSED
LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV