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