1*9e39c5baSBill Taylor# 2*9e39c5baSBill Taylor# CDDL HEADER START 3*9e39c5baSBill Taylor# 4*9e39c5baSBill Taylor# The contents of this file are subject to the terms of the 5*9e39c5baSBill Taylor# Common Development and Distribution License (the "License"). 6*9e39c5baSBill Taylor# You may not use this file except in compliance with the License. 7*9e39c5baSBill Taylor# 8*9e39c5baSBill Taylor# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*9e39c5baSBill Taylor# or http://www.opensolaris.org/os/licensing. 10*9e39c5baSBill Taylor# See the License for the specific language governing permissions 11*9e39c5baSBill Taylor# and limitations under the License. 12*9e39c5baSBill Taylor# 13*9e39c5baSBill Taylor# When distributing Covered Code, include this CDDL HEADER in each 14*9e39c5baSBill Taylor# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*9e39c5baSBill Taylor# If applicable, add the following below this CDDL HEADER, with the 16*9e39c5baSBill Taylor# fields enclosed by brackets "[]" replaced with your own identifying 17*9e39c5baSBill Taylor# information: Portions Copyright [yyyy] [name of copyright owner] 18*9e39c5baSBill Taylor# 19*9e39c5baSBill Taylor# CDDL HEADER END 20*9e39c5baSBill Taylor# 21*9e39c5baSBill Taylor 22*9e39c5baSBill Taylor# 23*9e39c5baSBill Taylor# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 24*9e39c5baSBill Taylor# Use is subject to license terms. 25*9e39c5baSBill Taylor# 26*9e39c5baSBill Taylor# This makefile drives the production of the tavor InfiniBand module 27*9e39c5baSBill Taylor# 28*9e39c5baSBill Taylor# intel architecture dependent 29*9e39c5baSBill Taylor# 30*9e39c5baSBill Taylor# uts/intel/tavor/Makefile 31*9e39c5baSBill Taylor# 32*9e39c5baSBill Taylor 33*9e39c5baSBill Taylor# 34*9e39c5baSBill Taylor# Paths to the base of the uts directory trees 35*9e39c5baSBill Taylor# 36*9e39c5baSBill TaylorUTSBASE = ../.. 37*9e39c5baSBill Taylor 38*9e39c5baSBill Taylor# 39*9e39c5baSBill Taylor# Define the module and object file sets. 40*9e39c5baSBill Taylor# 41*9e39c5baSBill TaylorMODULE = tavor 42*9e39c5baSBill TaylorOBJECTS = $(TAVOR_OBJS:%=$(OBJS_DIR)/%) 43*9e39c5baSBill TaylorLINTS = $(TAVOR_OBJS:%.o=$(LINTS_DIR)/%.ln) 44*9e39c5baSBill TaylorROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE) 45*9e39c5baSBill TaylorCONF_SRCDIR = $(UTSBASE)/common/io/ib/adapters/tavor 46*9e39c5baSBill TaylorLDFLAGS += -dy -Ndrv/ib -Nmisc/ibtl -Nmisc/ibmf 47*9e39c5baSBill TaylorWARLOCK_OUT = $(TAVOR_OBJS:%.o=%.ll) 48*9e39c5baSBill TaylorWARLOCK_OK = $(MODULE).ok 49*9e39c5baSBill TaylorWLCMD_DIR = $(UTSBASE)/common/io/warlock 50*9e39c5baSBill Taylor 51*9e39c5baSBill Taylor# 52*9e39c5baSBill Taylor# Include common rules. 53*9e39c5baSBill Taylor# 54*9e39c5baSBill Taylorinclude $(UTSBASE)/intel/Makefile.intel 55*9e39c5baSBill Taylor 56*9e39c5baSBill Taylor# 57*9e39c5baSBill Taylor# Define targets 58*9e39c5baSBill Taylor# 59*9e39c5baSBill TaylorALL_TARGET = $(BINARY) $(SRC_CONFFILE) 60*9e39c5baSBill TaylorLINT_TARGET = $(MODULE).lint 61*9e39c5baSBill TaylorINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) 62*9e39c5baSBill Taylor 63*9e39c5baSBill Taylor# 64*9e39c5baSBill Taylor# Overrides 65*9e39c5baSBill Taylor# 66*9e39c5baSBill Taylor 67*9e39c5baSBill Taylor# 68*9e39c5baSBill Taylor# Build with no debug TNF probes enabled (by default) 69*9e39c5baSBill Taylor# 70*9e39c5baSBill Taylor#DEBUG_DEFS_DBG32 += -DTNF_DEBUG 71*9e39c5baSBill Taylor#DEBUG_DEFS_DBG64 += -DTNF_DEBUG 72*9e39c5baSBill Taylor 73*9e39c5baSBill Taylor# 74*9e39c5baSBill Taylor# lint pass one enforcement 75*9e39c5baSBill Taylor# 76*9e39c5baSBill TaylorCFLAGS += $(CCVERBOSE) 77*9e39c5baSBill Taylor 78*9e39c5baSBill Taylor# 79*9e39c5baSBill Taylor# For now, disable these lint checks; maintainers should endeavor 80*9e39c5baSBill Taylor# to investigate and remove these for maximum lint coverage. 81*9e39c5baSBill Taylor# Please do not carry these forward to new Makefiles. 82*9e39c5baSBill Taylor# 83*9e39c5baSBill TaylorLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN 84*9e39c5baSBill TaylorLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV 85*9e39c5baSBill TaylorLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON 86*9e39c5baSBill Taylor 87*9e39c5baSBill Taylor# 88*9e39c5baSBill Taylor# Default build targets. 89*9e39c5baSBill Taylor# 90*9e39c5baSBill Taylor.KEEP_STATE: 91*9e39c5baSBill Taylor 92*9e39c5baSBill Taylordef: $(DEF_DEPS) 93*9e39c5baSBill Taylor 94*9e39c5baSBill Taylorall: $(ALL_DEPS) 95*9e39c5baSBill Taylor 96*9e39c5baSBill Taylorclean: $(CLEAN_DEPS) 97*9e39c5baSBill Taylor $(RM) $(WARLOCK_OUT) $(WARLOCK_OK) 98*9e39c5baSBill Taylor 99*9e39c5baSBill Taylorclobber: $(CLOBBER_DEPS) 100*9e39c5baSBill Taylor $(RM) $(WARLOCK_OUT) $(WARLOCK_OK) 101*9e39c5baSBill Taylor 102*9e39c5baSBill Taylorlint: $(LINT_DEPS) 103*9e39c5baSBill Taylor 104*9e39c5baSBill Taylormodlintlib: $(MODLINTLIB_DEPS) 105*9e39c5baSBill Taylor 106*9e39c5baSBill Taylorclean.lint: $(CLEAN_LINT_DEPS) 107*9e39c5baSBill Taylor 108*9e39c5baSBill Taylorinstall: $(INSTALL_DEPS) 109*9e39c5baSBill Taylor 110*9e39c5baSBill Taylor# 111*9e39c5baSBill Taylor# Include common targets. 112*9e39c5baSBill Taylor# 113*9e39c5baSBill Taylorinclude $(UTSBASE)/intel/Makefile.targ 114*9e39c5baSBill Taylor 115*9e39c5baSBill Taylor 116*9e39c5baSBill Taylor# 117*9e39c5baSBill Taylor# Defines for local commands. 118*9e39c5baSBill Taylor# 119*9e39c5baSBill TaylorWARLOCK = warlock 120*9e39c5baSBill TaylorWLCC = wlcc 121*9e39c5baSBill TaylorTOUCH = touch 122*9e39c5baSBill TaylorTEST = test 123*9e39c5baSBill Taylor 124*9e39c5baSBill Taylorwarlock: $(WARLOCK_OK) 125*9e39c5baSBill Taylor 126*9e39c5baSBill Taylor$(WARLOCK_OK): $(WARLOCK_OUT) warlock_ddi.files $(WLCMD_DIR)/tavor.wlcmd 127*9e39c5baSBill Taylor $(WARLOCK) -c $(WLCMD_DIR)/tavor.wlcmd $(WARLOCK_OUT) -l \ 128*9e39c5baSBill Taylor $(UTSBASE)/intel/warlock/ddi_dki_impl.ll 129*9e39c5baSBill Taylor $(TOUCH) $@ 130*9e39c5baSBill Taylor 131*9e39c5baSBill Taylor%.ll: $(UTSBASE)/common/io/ib/adapters/tavor/%.c 132*9e39c5baSBill Taylor $(WLCC) $(CPPFLAGS) -DNPROBE -DDEBUG -o $@ $< 133*9e39c5baSBill Taylor 134*9e39c5baSBill Taylorwarlock_ddi.files: 135*9e39c5baSBill Taylor @cd $(UTSBASE)/intel/warlock; pwd; $(MAKE) warlock 136