1b494511aSVenki Rajagopalan# 2b494511aSVenki Rajagopalan# CDDL HEADER START 3b494511aSVenki Rajagopalan# 4b494511aSVenki Rajagopalan# The contents of this file are subject to the terms of the 5b494511aSVenki Rajagopalan# Common Development and Distribution License (the "License"). 6b494511aSVenki Rajagopalan# You may not use this file except in compliance with the License. 7b494511aSVenki Rajagopalan# 8b494511aSVenki Rajagopalan# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9b494511aSVenki Rajagopalan# or http://www.opensolaris.org/os/licensing. 10b494511aSVenki Rajagopalan# See the License for the specific language governing permissions 11b494511aSVenki Rajagopalan# and limitations under the License. 12b494511aSVenki Rajagopalan# 13b494511aSVenki Rajagopalan# When distributing Covered Code, include this CDDL HEADER in each 14b494511aSVenki Rajagopalan# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15b494511aSVenki Rajagopalan# If applicable, add the following below this CDDL HEADER, with the 16b494511aSVenki Rajagopalan# fields enclosed by brackets "[]" replaced with your own identifying 17b494511aSVenki Rajagopalan# information: Portions Copyright [yyyy] [name of copyright owner] 18b494511aSVenki Rajagopalan# 19b494511aSVenki Rajagopalan# CDDL HEADER END 20b494511aSVenki Rajagopalan# 21b494511aSVenki Rajagopalan 22b494511aSVenki Rajagopalan# 23b494511aSVenki Rajagopalan# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 24b494511aSVenki Rajagopalan# 25*b6b206fcSJohn Levon# Copyright (c) 2018, Joyent, Inc. 26b494511aSVenki Rajagopalan 27b494511aSVenki Rajagopalan# 28b494511aSVenki Rajagopalan# This makefile drives the production of the EoIB Nexus driver 29b494511aSVenki Rajagopalan# 30b494511aSVenki Rajagopalan# intel architecture dependent 31b494511aSVenki Rajagopalan# 32b494511aSVenki Rajagopalan 33b494511aSVenki Rajagopalan# 34b494511aSVenki Rajagopalan# Path to the base of the uts directory tree (usually /usr/src/uts) 35b494511aSVenki Rajagopalan# 36b494511aSVenki RajagopalanUTSBASE = ../.. 37b494511aSVenki Rajagopalan 38b494511aSVenki Rajagopalan# 39b494511aSVenki Rajagopalan# Define the module and object file sets 40b494511aSVenki Rajagopalan# 41b494511aSVenki RajagopalanMODULE = eibnx 42b494511aSVenki RajagopalanOBJECTS = $(EIBNX_OBJS:%=$(OBJS_DIR)/%) 43b494511aSVenki RajagopalanLINTS = $(EIBNX_OBJS:%.o=$(LINTS_DIR)/%.ln) 44b494511aSVenki RajagopalanROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE) 45b494511aSVenki RajagopalanCONF_SRCDIR = $(UTSBASE)/common/io/ib/clients/eoib 46b494511aSVenki Rajagopalan 47b494511aSVenki Rajagopalan# 48b494511aSVenki Rajagopalan# Include common rules 49b494511aSVenki Rajagopalan# 50b494511aSVenki Rajagopalaninclude $(UTSBASE)/intel/Makefile.intel 51b494511aSVenki Rajagopalan 52b494511aSVenki Rajagopalan# 53b494511aSVenki Rajagopalan# Define targets 54b494511aSVenki Rajagopalan# 55b494511aSVenki RajagopalanALL_TARGET = $(BINARY) $(SRC_CONFILE) 56b494511aSVenki RajagopalanLINT_TARGET = $(MODULE).lint 57b494511aSVenki RajagopalanINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) 58b494511aSVenki Rajagopalan 59b494511aSVenki Rajagopalan# Module specific debug flag 60b494511aSVenki Rajagopalan# 61b494511aSVenki RajagopalanCPPFLAGS += -DENX_DEBUG 62b494511aSVenki Rajagopalan 63b494511aSVenki Rajagopalan# 64b494511aSVenki Rajagopalan# Lint pass one enforcement 65b494511aSVenki Rajagopalan# 66b494511aSVenki RajagopalanCFLAGS += $(CCVERBOSE) 67b494511aSVenki Rajagopalan 68b494511aSVenki Rajagopalan# 69b494511aSVenki Rajagopalan# Depends on misc/ibtl 70b494511aSVenki Rajagopalan# 71b494511aSVenki RajagopalanLDFLAGS += -dy -Nmisc/ibcm -Nmisc/ibtl 72b494511aSVenki Rajagopalan 73b494511aSVenki Rajagopalan# 74b494511aSVenki Rajagopalan# The only lint flag we should need 75b494511aSVenki Rajagopalan# 76b494511aSVenki RajagopalanLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN 77b494511aSVenki Rajagopalan 787014882cSRichard LoweCERRWARN += -_gcc=-Wno-parentheses 797014882cSRichard LoweCERRWARN += -_gcc=-Wno-uninitialized 807014882cSRichard Lowe 81*b6b206fcSJohn Levon# needs work 82*b6b206fcSJohn Levon$(OBJS_DIR)/enx_ibt.o := SMOFF += deref_check 83*b6b206fcSJohn Levon 84b494511aSVenki Rajagopalan# 85b494511aSVenki Rajagopalan# Default build targets 86b494511aSVenki Rajagopalan# 87b494511aSVenki Rajagopalan.KEEP_STATE: 88b494511aSVenki Rajagopalan 89b494511aSVenki Rajagopalandef: $(DEF_DEPS) 90b494511aSVenki Rajagopalan 91b494511aSVenki Rajagopalanall: $(ALL_DEPS) 92b494511aSVenki Rajagopalan 93b494511aSVenki Rajagopalanclean: $(CLEAN_DEPS) 94b494511aSVenki Rajagopalan 95b494511aSVenki Rajagopalanclobber: $(CLOBBER_DEPS) 96b494511aSVenki Rajagopalan 97b494511aSVenki Rajagopalanlint: $(LINT_DEPS) 98b494511aSVenki Rajagopalan 99b494511aSVenki Rajagopalanmodlintlib: $(MODLINTLIB_DEPS) 100b494511aSVenki Rajagopalan 101b494511aSVenki Rajagopalanclean.lint: $(CLEAN_LINT_DEPS) 102b494511aSVenki Rajagopalan 103b494511aSVenki Rajagopalaninstall: $(INSTALL_DEPS) 104b494511aSVenki Rajagopalan 105b494511aSVenki Rajagopalan# 106b494511aSVenki Rajagopalan# Include common targets 107b494511aSVenki Rajagopalan# 108b494511aSVenki Rajagopalaninclude $(UTSBASE)/intel/Makefile.targ 109