Makefile.starfire revision 8793b36b40d14ad0a0fecc97738dc118a928f46c
98N/A#
98N/A# CDDL HEADER START
1089N/A#
98N/A# The contents of this file are subject to the terms of the
98N/A# Common Development and Distribution License (the "License").
919N/A# You may not use this file except in compliance with the License.
919N/A#
919N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
919N/A# or http://www.opensolaris.org/os/licensing.
919N/A# See the License for the specific language governing permissions
919N/A# and limitations under the License.
919N/A#
919N/A# When distributing Covered Code, include this CDDL HEADER in each
919N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
919N/A# If applicable, add the following below this CDDL HEADER, with the
919N/A# fields enclosed by brackets "[]" replaced with your own identifying
919N/A# information: Portions Copyright [yyyy] [name of copyright owner]
919N/A#
919N/A# CDDL HEADER END
919N/A#
919N/A#
919N/A# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
98N/A# Use is subject to license terms.
98N/A#
98N/A# Global definitions for sun4u starfire implementation specific modules.
493N/A#
493N/A
98N/A#
970N/A# Define directories.
970N/A#
970N/AROOT_STARFIRE_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-Enterprise-10000
970N/AROOT_STARFIRE_MOD_DIR = $(ROOT_STARFIRE_DIR)/kernel
970N/AROOT_STARFIRE_KERN_DIR_32 = $(ROOT_STARFIRE_MOD_DIR)
970N/AROOT_STARFIRE_KERN_DIR_64 = $(ROOT_STARFIRE_MOD_DIR)/$(SUBDIR64)
970N/AROOT_STARFIRE_MISC_DIR_32 = $(ROOT_STARFIRE_MOD_DIR)/misc
1003N/AROOT_STARFIRE_MISC_DIR_64 = $(ROOT_STARFIRE_MOD_DIR)/misc/$(SUBDIR64)
970N/AROOT_STARFIRE_DRV_DIR_32 = $(ROOT_STARFIRE_MOD_DIR)/drv
970N/AROOT_STARFIRE_DRV_DIR_64 = $(ROOT_STARFIRE_MOD_DIR)/drv/$(SUBDIR64)
970N/AROOT_STARFIRE_CPU_DIR_32 = $(ROOT_STARFIRE_MOD_DIR)/cpu
970N/AROOT_STARFIRE_CPU_DIR_64 = $(ROOT_STARFIRE_MOD_DIR)/cpu/$(SUBDIR64)
970N/A
98N/AROOT_STARFIRE_KERN_DIR = $(ROOT_STARFIRE_KERN_DIR_$(CLASS))
1089N/AROOT_STARFIRE_MISC_DIR = $(ROOT_STARFIRE_MISC_DIR_$(CLASS))
98N/AROOT_STARFIRE_DRV_DIR = $(ROOT_STARFIRE_DRV_DIR_$(CLASS))
911N/AROOT_STARFIRE_CPU_DIR = $(ROOT_STARFIRE_CPU_DIR_$(CLASS))
1089N/A
1089N/AROOT_PLAT_MOD_DIRS += $(ROOT_STARFIRE_MOD_DIR)
911N/AROOT_PLAT_MISC_DIRS_32 += $(ROOT_STARFIRE_MISC_DIR_32)
98N/A
493N/AUSR_STARFIRE_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-Enterprise-10000
493N/AUSR_STARFIRE_INC_DIR = $(USR_STARFIRE_DIR)/include
98N/AUSR_STARFIRE_ISYS_DIR = $(USR_STARFIRE_INC_DIR)/sys
98N/AUSR_STARFIRE_SBIN_DIR = $(USR_STARFIRE_DIR)/sbin
1089N/AUSR_STARFIRE_LIB_DIR = $(USR_STARFIRE_DIR)/lib
156N/A
493N/A#
493N/A# Define objects.
493N/A#
493N/ASTARFIRE_OBJS = starfire.o
493N/A
493N/A#
493N/A# Define modules.
98N/A#
98N/ASTARFIRE_KMODS = platmod
98N/ASTARFIRE_KMODS += rootnex sbus pcipsy
1089N/ASTARFIRE_KMODS += cvc cvcredir
705N/ASTARFIRE_KMODS += ngdr ngdrmach
1089N/ASTARFIRE_KMODS += idn
606N/A
606N/A#
606N/A# CPU modules.
606N/A#
705N/ASTARFIRE_CPU_KMODS += spitfire
967N/A
606N/A#
606N/A# Include the makefiles which define build rule templates, the
606N/A# collection of files per module, and a few specific flags. Note
606N/A# that order is significant, just as with an include path. The
606N/A# first build rule template which matches the files name will be
606N/A# used. By including these in order from most machine dependent
1089N/A# to most machine independent, we allow a machine dependent file
1097N/A# to be used in preference over a machine independent version
606N/A# (Such as a machine specific optimization, which preserves the
606N/A# interfaces.)
1109N/A#
1109N/Ainclude $(UTSBASE)/sun4u/ngdr/Makefile.files
1109N/Ainclude $(UTSBASE)/sun4u/starfire/Makefile.files
606N/A
606N/A#
606N/A# Include common rules.
98N/A#
970N/Ainclude $(UTSBASE)/sun4u/Makefile.sun4u
970N/A
970N/A#
493N/A# Everybody needs to know how to build modstubs.o and to locate unix.o
493N/A#
493N/AUNIX_DIR = $(UTSBASE)/$(PLATFORM)/starfire/unix
98N/AMODSTUBS_DIR = $(UNIX_DIR)
647N/ADSF_DIR = $(UTSBASE)/$(PLATFORM)/starfire/genassym
1089N/ALINTS_DIR = $(OBJS_DIR)
1089N/ALINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starfire/lint-libs/$(OBJS_DIR)
98N/A
647N/AUNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
647N/A
1089N/ALINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln
647N/A
606N/A#
1089N/A# Define the actual specific platforms
98N/A#
606N/AMACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU
606N/AMACHINE_DEFS += -D_STARFIRE -D_CPU_SIGNATURE
98N/A
493N/A#
493N/A# Define for inline pre-processing since
98N/A# cpp not smart about v9 yet.
705N/A#
705N/ACPP_DEFS_32 =
705N/ACPP_DEFS_64 = -D__sparcv9
493N/ACPP_DEFS = $(CPP_DEFS_$(CLASS))
493N/A
493N/A#
705N/A# For now, disable these lint checks; maintainers should endeavor
705N/A# to investigate and remove these for maximum lint coverage.
705N/A# Please do not carry these forward to new Makefiles.
970N/A#
970N/ALINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
970N/ALINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
970N/ALINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
970N/ALINTTAGS += -erroff=E_STATIC_UNUSED
970N/ALINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
970N/ALINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
970N/ALINTTAGS += -erroff=E_BAD_FORMAT_STR2
970N/A