19e39c5baSBill Taylor# 29e39c5baSBill Taylor# CDDL HEADER START 39e39c5baSBill Taylor# 49e39c5baSBill Taylor# The contents of this file are subject to the terms of the 59e39c5baSBill Taylor# Common Development and Distribution License (the "License"). 69e39c5baSBill Taylor# You may not use this file except in compliance with the License. 79e39c5baSBill Taylor# 89e39c5baSBill Taylor# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 99e39c5baSBill Taylor# or http://www.opensolaris.org/os/licensing. 109e39c5baSBill Taylor# See the License for the specific language governing permissions 119e39c5baSBill Taylor# and limitations under the License. 129e39c5baSBill Taylor# 139e39c5baSBill Taylor# When distributing Covered Code, include this CDDL HEADER in each 149e39c5baSBill Taylor# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 159e39c5baSBill Taylor# If applicable, add the following below this CDDL HEADER, with the 169e39c5baSBill Taylor# fields enclosed by brackets "[]" replaced with your own identifying 179e39c5baSBill Taylor# information: Portions Copyright [yyyy] [name of copyright owner] 189e39c5baSBill Taylor# 199e39c5baSBill Taylor# CDDL HEADER END 209e39c5baSBill Taylor# 219e39c5baSBill Taylor 229e39c5baSBill Taylor# 239e39c5baSBill Taylor# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 249e39c5baSBill Taylor# Use is subject to license terms. 259e39c5baSBill Taylor# 269e39c5baSBill Taylor# This makefile drives the production of the hermon InfiniBand module 279e39c5baSBill Taylor# 289e39c5baSBill Taylor# intel architecture dependent 299e39c5baSBill Taylor# 309e39c5baSBill Taylor# uts/intel/hermon/Makefile 319e39c5baSBill Taylor# 329e39c5baSBill Taylor 339e39c5baSBill Taylor# 349e39c5baSBill Taylor# Path to the base of the uts directory tree (usually /usr/src/uts). 359e39c5baSBill Taylor# 369e39c5baSBill TaylorUTSBASE = ../.. 379e39c5baSBill Taylor 389e39c5baSBill Taylor# 399e39c5baSBill Taylor# Define the module and object file sets. 409e39c5baSBill Taylor# 419e39c5baSBill TaylorMODULE = hermon 429e39c5baSBill TaylorOBJECTS = $(HERMON_OBJS:%=$(OBJS_DIR)/%) 439e39c5baSBill TaylorLINTS = $(HERMON_OBJS:%.o=$(LINTS_DIR)/%.ln) 449e39c5baSBill TaylorROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE) 459e39c5baSBill TaylorCONF_SRCDIR = $(UTSBASE)/common/io/ib/adapters/hermon 469e39c5baSBill TaylorLDFLAGS += -dy -Ndrv/ib -Nmisc/ibtl -Nmisc/ibmf 479e39c5baSBill TaylorWARLOCK_OUT = $(HERMON_OBJS:%.o=%.ll) 489e39c5baSBill TaylorWARLOCK_OK = $(MODULE).ok 499e39c5baSBill TaylorWLCMD_DIR = $(UTSBASE)/common/io/warlock 509e39c5baSBill Taylor 519e39c5baSBill Taylor# 529e39c5baSBill Taylor# Include common rules. 539e39c5baSBill Taylor# 549e39c5baSBill Taylorinclude $(UTSBASE)/intel/Makefile.intel 559e39c5baSBill Taylor 569e39c5baSBill Taylor# 579e39c5baSBill Taylor# Define targets 589e39c5baSBill Taylor# 599e39c5baSBill TaylorALL_TARGET = $(BINARY) $(SRC_CONFFILE) 609e39c5baSBill TaylorLINT_TARGET = $(MODULE).lint 619e39c5baSBill TaylorINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) 629e39c5baSBill Taylor 639e39c5baSBill Taylor# 649e39c5baSBill Taylor# Overrides 659e39c5baSBill Taylor# 669e39c5baSBill Taylor 679e39c5baSBill Taylor# 689e39c5baSBill Taylor# Build with no debug TNF probes enabled (by default) 699e39c5baSBill Taylor# 709e39c5baSBill Taylor#DEBUG_DEFS_DBG32 += -DTNF_DEBUG 719e39c5baSBill Taylor#DEBUG_DEFS_DBG64 += -DTNF_DEBUG 729e39c5baSBill Taylor 739e39c5baSBill Taylor# 749e39c5baSBill Taylor# lint pass one enforcement 759e39c5baSBill Taylor# 769e39c5baSBill TaylorCFLAGS += $(CCVERBOSE) 779e39c5baSBill Taylor 78*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-switch 79*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-value 80*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-label 81*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-parentheses 82*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-uninitialized 83*7014882cSRichard Lowe 849e39c5baSBill Taylor# 859e39c5baSBill Taylor# Default build targets. 869e39c5baSBill Taylor# 879e39c5baSBill Taylor.KEEP_STATE: 889e39c5baSBill Taylor 899e39c5baSBill Taylordef: $(DEF_DEPS) 909e39c5baSBill Taylor 919e39c5baSBill Taylorall: $(ALL_DEPS) 929e39c5baSBill Taylor 939e39c5baSBill Taylorclean: $(CLEAN_DEPS) 949e39c5baSBill Taylor 959e39c5baSBill Taylorclobber: $(CLOBBER_DEPS) 969e39c5baSBill Taylor 979e39c5baSBill Taylorlint: $(LINT_DEPS) 989e39c5baSBill Taylor 999e39c5baSBill Taylormodlintlib: $(MODLINTLIB_DEPS) 1009e39c5baSBill Taylor 1019e39c5baSBill Taylorclean.lint: $(CLEAN_LINT_DEPS) 1029e39c5baSBill Taylor 1039e39c5baSBill Taylorinstall: $(INSTALL_DEPS) 1049e39c5baSBill Taylor 1059e39c5baSBill Taylor# 1069e39c5baSBill Taylor# Include common targets. 1079e39c5baSBill Taylor# 1089e39c5baSBill Taylorinclude $(UTSBASE)/intel/Makefile.targ 1099e39c5baSBill Taylor 1109e39c5baSBill Taylor 1119e39c5baSBill Taylor# 1129e39c5baSBill Taylor# Defines for local commands. 1139e39c5baSBill Taylor# 1149e39c5baSBill TaylorWARLOCK = warlock 1159e39c5baSBill TaylorWLCC = wlcc 1169e39c5baSBill TaylorTOUCH = touch 1179e39c5baSBill TaylorTEST = test 1189e39c5baSBill Taylor 1199e39c5baSBill Taylorwarlock: $(WARLOCK_OK) 1209e39c5baSBill Taylor 1219e39c5baSBill Taylor$(WARLOCK_OK): $(WARLOCK_OUT) warlock_ddi.files $(WLCMD_DIR)/hermon.wlcmd 1229e39c5baSBill Taylor $(WARLOCK) -c $(WLCMD_DIR)/hermon.wlcmd $(WARLOCK_OUT) -l \ 1239e39c5baSBill Taylor $(UTSBASE)/intel/warlock/ddi_dki_impl.ll 1249e39c5baSBill Taylor $(TOUCH) $@ 1259e39c5baSBill Taylor 1269e39c5baSBill Taylor%.ll: $(UTSBASE)/common/io/ib/adapters/hermon/%.c 1279e39c5baSBill Taylor $(WLCC) $(CPPFLAGS) -DNPROBE -DDEBUG -o $@ $< 1289e39c5baSBill Taylor 1299e39c5baSBill Taylorwarlock_ddi.files: 1309e39c5baSBill Taylor @cd $(UTSBASE)/intel/warlock; pwd; $(MAKE) warlock 131