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 (the "License"). 6# You may not use this file except in compliance with the License. 7# 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. 12# 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] 18# 19# CDDL HEADER END 20# 21 22# 23# Copyright 2009 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26 27# 28# This makefile drives the production of the Serengeti 29# UltraSPARC driver module. 30# 31 32# 33# Path to the base of the uts directory tree (usually /usr/src/uts). 34# 35UTSBASE = ../../.. 36 37# 38# Define the module and object file sets. 39# 40MODULE = SUNW,UltraSPARC-III+ 41OBJECTS = $(CHEETAHPLUS_OBJS:%=$(OBJS_DIR)/%) 42LINTS = $(CHEETAHPLUS_OBJS:%.o=$(LINTS_DIR)/%.ln) 43ROOTMODULE = $(ROOT_SERENGETI_CPU_DIR)/$(MODULE) 44SOFTLINKS = SUNW,UltraSPARC-IV SUNW,UltraSPARC-IV+ 45ROOTSOFTLINKS = $(SOFTLINKS:%=$(ROOT_SERENGETI_CPU_DIR)/%) 46 47CPU_DIR = . 48HERE = ../cheetahplus 49 50# 51# Include common rules. 52# 53include $(UTSBASE)/sun4u/serengeti/Makefile.serengeti 54 55# 56# Override defaults 57# 58CLEANFILES += $(CPULIB) $(SYM_MOD) 59 60# 61# Define targets 62# 63SYM_MOD = $(OBJS_DIR)/unix.sym 64ALL_TARGET = $(SYM_MOD) 65LINT_TARGET = $(MODULE).lint 66INSTALL_TARGET = def $(BINARY) $(ROOTMODULE) $(ROOTSOFTLINKS) 67 68# 69# Overrides 70# 71ALL_BUILDS = $(ALL_BUILDSONLY64) 72DEF_BUILDS = $(DEF_BUILDSONLY64) 73CLEANLINTFILES += $(LINT32_FILES) 74 75# 76# lint pass one enforcement 77# 78CFLAGS += $(CCVERBOSE) -DCHEETAH -DCHEETAH_PLUS -DCPU_IMP_L1_CACHE_PARITY \ 79 -DCPU_IMP_ECACHE_ASSOC -DCPU_IMP_DUAL_PAGESIZE -DCPU_IMP_AFSR_EXT 80ASFLAGS += -DCHEETAH -DCHEETAH_PLUS -DCPU_IMP_L1_CACHE_PARITY \ 81 -DCPU_IMP_ECACHE_ASSOC -DCPU_IMP_DUAL_PAGESIZE -DCPU_IMP_AFSR_EXT 82 83# 84# cpu-module-specific flags 85# 86CPPFLAGS += -DCPU_MODULE -DCHEETAH -DCHEETAH_PLUS -DCPU_IMP_L1_CACHE_PARITY \ 87 -DCPU_IMP_ECACHE_ASSOC -DCPU_IMP_DUAL_PAGESIZE -DCPU_IMP_AFSR_EXT 88AS_CPPFLAGS += -DCPU_MODULE -DCHEETAH -DCHEETAH_PLUS -DCPU_IMP_L1_CACHE_PARITY \ 89 -DCPU_IMP_ECACHE_ASSOC -DCPU_IMP_DUAL_PAGESIZE -DCPU_IMP_AFSR_EXT 90 91 92# 93# Default build targets. 94# 95.KEEP_STATE: 96 97def: $(DEF_DEPS) 98 99all: $(ALL_DEPS) 100 101clean: $(CLEAN_DEPS) 102 103clobber: $(CLOBBER_DEPS) 104 105lint: $(LINT_DEPS) 106 107modlintlib: $(MODLINTLIB_DEPS) 108 109clean.lint: $(CLEAN_LINT_DEPS) 110 111install: $(INSTALL_DEPS) 112 113$(CPULIB): $(BINARY) 114 $(BUILD.SO) $(BINARY) 115 116$(SYM_MOD): $(UNIX_O) $(CPULIB) 117 @echo "resolving symbols against unix.o" 118 @echo $(UNIX_DIR) 119 @echo $(OBJS_DIR) 120 @(cd $(UNIX_DIR); pwd; \ 121 CPU_DIR=$(HERE) SYM_MOD=$(HERE)/$(SYM_MOD) $(MAKE) symcheck) 122 123$(ROOTSOFTLINKS): $(ROOTMODULE) 124 $(RM) $@; $(SYMLINK) $(MODULE) $@ 125 126# Include common targets. 127# 128include $(UTSBASE)/sun4u/serengeti/Makefile.targ 129