1d4bc0535SKrishna Elango# 2d4bc0535SKrishna Elango# CDDL HEADER START 3d4bc0535SKrishna Elango# 4d4bc0535SKrishna Elango# The contents of this file are subject to the terms of the 5d4bc0535SKrishna Elango# Common Development and Distribution License (the "License"). 6d4bc0535SKrishna Elango# You may not use this file except in compliance with the License. 7d4bc0535SKrishna Elango# 8d4bc0535SKrishna Elango# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9d4bc0535SKrishna Elango# or http://www.opensolaris.org/os/licensing. 10d4bc0535SKrishna Elango# See the License for the specific language governing permissions 11d4bc0535SKrishna Elango# and limitations under the License. 12d4bc0535SKrishna Elango# 13d4bc0535SKrishna Elango# When distributing Covered Code, include this CDDL HEADER in each 14d4bc0535SKrishna Elango# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15d4bc0535SKrishna Elango# If applicable, add the following below this CDDL HEADER, with the 16d4bc0535SKrishna Elango# fields enclosed by brackets "[]" replaced with your own identifying 17d4bc0535SKrishna Elango# information: Portions Copyright [yyyy] [name of copyright owner] 18d4bc0535SKrishna Elango# 19d4bc0535SKrishna Elango# CDDL HEADER END 20d4bc0535SKrishna Elango# 21d4bc0535SKrishna Elango# 22d4bc0535SKrishna Elango# uts/sparc/pcieb/Makefile 23d4bc0535SKrishna Elango# 24d4bc0535SKrishna Elango# Copyright 2009 Sun Microsystems, Inc. All rights reserved. 25d4bc0535SKrishna Elango# Use is subject to license terms. 26d4bc0535SKrishna Elango# 27d4bc0535SKrishna Elango# This makefile drives the production of the pcieb driver kernel module 28d4bc0535SKrishna Elango# 29d4bc0535SKrishna Elango# sparc implementation architecture dependent 30d4bc0535SKrishna Elango# 31d4bc0535SKrishna Elango 32d4bc0535SKrishna Elango# 33d4bc0535SKrishna Elango# Path to the base of the uts directory tree (usually /usr/src/uts). 34d4bc0535SKrishna Elango# 35d4bc0535SKrishna ElangoUTSBASE = ../.. 36d4bc0535SKrishna Elango 37d4bc0535SKrishna Elango# 38d4bc0535SKrishna Elango# Define the module and object file sets. 39d4bc0535SKrishna Elango# 40d4bc0535SKrishna ElangoMODULE = pcieb 41d4bc0535SKrishna ElangoOBJECTS = $(PCIEB_OBJS:%=$(OBJS_DIR)/%) 42d4bc0535SKrishna ElangoLINTS = $(PCIEB_OBJS:%.o=$(LINTS_DIR)/%.ln) 43d4bc0535SKrishna ElangoROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE) 44d4bc0535SKrishna ElangoCONF_SRCDIR = $(UTSBASE)/common/io/pciex/ 45d4bc0535SKrishna Elango 46d4bc0535SKrishna Elango# 47d4bc0535SKrishna Elango# Include common rules. 48d4bc0535SKrishna Elango# 49d4bc0535SKrishna Elangoinclude $(UTSBASE)/sparc/Makefile.sparc 50d4bc0535SKrishna Elango 51d4bc0535SKrishna Elango# 52d4bc0535SKrishna Elango# Define targets 53d4bc0535SKrishna Elango# 54d4bc0535SKrishna ElangoALL_TARGET = $(BINARY) $(SRC_CONFFILE) 55d4bc0535SKrishna ElangoLINT_TARGET = $(MODULE).lint 56d4bc0535SKrishna ElangoINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) 57d4bc0535SKrishna Elango 58d4bc0535SKrishna Elango# 59d4bc0535SKrishna Elango# lint pass one enforcement 60d4bc0535SKrishna Elango# 61d4bc0535SKrishna ElangoCFLAGS += $(CCVERBOSE) 62d4bc0535SKrishna Elango 63d4bc0535SKrishna Elango# 64d4bc0535SKrishna Elango# Turn on doubleword alignment for 64 bit registers 65d4bc0535SKrishna Elango# 66d4bc0535SKrishna ElangoCFLAGS += -dalign 67d4bc0535SKrishna Elango 68d4bc0535SKrishna Elango# 69d4bc0535SKrishna Elango# Enable PLX workaround code and lint duplicate symbol 70d4bc0535SKrishna Elango# avoidance hack 71d4bc0535SKrishna Elango# 72d4bc0535SKrishna ElangoCPPFLAGS += -DPX_PLX 73d4bc0535SKrishna Elango 74d4bc0535SKrishna Elango# 75d4bc0535SKrishna Elango# Dependency 76d4bc0535SKrishna Elango# 77*26947304SEvan YanLDFLAGS += -dy -Nmisc/pcie 78d4bc0535SKrishna Elango 79d4bc0535SKrishna Elango# 80d4bc0535SKrishna Elango# For now, disable these lint checks; maintainers should endeavor 81d4bc0535SKrishna Elango# to investigate and remove these for maximum lint coverage. 82d4bc0535SKrishna Elango# Please do not carry these forward to new Makefiles. 83d4bc0535SKrishna Elango# 84d4bc0535SKrishna ElangoLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN 85d4bc0535SKrishna ElangoLINTTAGS += -erroff=E_STATIC_UNUSED 86d4bc0535SKrishna Elango 87d4bc0535SKrishna Elango# 88d4bc0535SKrishna Elango# Default build targets. 89d4bc0535SKrishna Elango# 90d4bc0535SKrishna Elango.KEEP_STATE: 91d4bc0535SKrishna Elango 92d4bc0535SKrishna Elangodef: $(DEF_DEPS) 93d4bc0535SKrishna Elango 94d4bc0535SKrishna Elangoall: $(ALL_DEPS) 95d4bc0535SKrishna Elango 96d4bc0535SKrishna Elangoclean: $(CLEAN_DEPS) 97d4bc0535SKrishna Elango 98d4bc0535SKrishna Elangoclobber: $(CLOBBER_DEPS) 99d4bc0535SKrishna Elango 100d4bc0535SKrishna Elangolint: $(LINT_DEPS) 101d4bc0535SKrishna Elango 102d4bc0535SKrishna Elangomodlintlib: $(MODLINTLIB_DEPS) 103d4bc0535SKrishna Elango 104d4bc0535SKrishna Elangoclean.lint: $(CLEAN_LINT_DEPS) 105d4bc0535SKrishna Elango 106d4bc0535SKrishna Elangoinstall: $(INSTALL_DEPS) 107d4bc0535SKrishna Elango 108d4bc0535SKrishna Elango# 109d4bc0535SKrishna Elango# Include common targets. 110d4bc0535SKrishna Elango# 111d4bc0535SKrishna Elangoinclude $(UTSBASE)/sparc/Makefile.targ 112