xref: /illumos-gate/usr/src/uts/intel/eibnx/Makefile (revision b6b206fc7fb36f7b13b01acf70ed6e676e405998)
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