xref: /illumos-gate/usr/src/uts/intel/bnxe/Makefile (revision 5328fc53d11d7151861fa272e4fb0248b8f0e145)
1#
2# This file and its contents are supplied under the terms of the
3# Common Development and Distribution License ("CDDL"), version 1.0.
4# You may only use this file in accordance with the terms of version
5# 1.0 of the CDDL.
6#
7# A full copy of the text of the CDDL should have accompanied this
8# source.  A copy of the CDDL is also available via the Internet at
9# http://www.illumos.org/license/CDDL.
10#
11
12#
13# Copyright (c) 2019, Joyent, Inc.
14#
15
16#
17# uts/intel/bnxe/Makefile
18#
19#	This makefile drives the production of the bnxe
20#	driver kernel module.
21#
22#	intel architecture dependent
23#
24
25#
26#	Paths to the base of the uts directory trees
27#
28UTSBASE = ../..
29
30#
31#	Define the module and object file sets.
32#
33MODULE		= bnxe
34OBJECTS		= $(BNXE_OBJS:%=$(OBJS_DIR)/%)
35LINTS		= $(LINTS_DIR)/bnxe_lint.ln
36ROOTMODULE	= $(ROOT_DRV_DIR)/$(MODULE)
37SRCDIR		= $(UTSBASE)/common/io/bnxe
38CONF_SRCDIR	= $(SRCDIR)
39
40#
41#	Include common rules.
42#
43include $(UTSBASE)/intel/Makefile.intel
44
45#
46#	Define targets
47#
48ALL_TARGET	= $(BINARY) $(CONFMOD)
49LINT_TARGET	= $(MODULE).lint
50INSTALL_TARGET	= $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
51
52C99LMODE=       -Xc99=%all
53
54#
55# 	Driver-specific flags
56#	XXX inline bits were originally set to inline
57#
58CPPFLAGS	+= -DLM_RXPKT_NON_CONTIGUOUS \
59		   -DELINK_ENHANCEMENTS \
60		   -DELINK_57711E_SUPPORT \
61		   -DELINK_DEBUG \
62		   -D__inline= \
63		   -D_inline= \
64		   -D__BASENAME__=\"bnxe\" \
65		   -D__SunOS \
66		   -D__S11 \
67		   -DILLUMOS \
68		   -DLITTLE_ENDIAN \
69		   -DLITTLE_ENDIAN_HOST \
70		   -D__LITTLE_ENDIAN \
71		   -I$(SRCDIR)/577xx/include \
72		   -I$(SRCDIR)/577xx/drivers/common/ecore \
73		   -I$(SRCDIR)/577xx/drivers/common/include \
74		   -I$(SRCDIR)/577xx/drivers/common/include/l4 \
75		   -I$(SRCDIR)/577xx/drivers/common/include/l5 \
76		   -I$(SRCDIR)/577xx/drivers/common/lm/device \
77		   -I$(SRCDIR)/577xx/drivers/common/lm/fw \
78		   -I$(SRCDIR)/577xx/drivers/common/lm/include \
79		   -I$(SRCDIR)/577xx/drivers/common/lm/l4 \
80		   -I$(SRCDIR)/577xx/drivers/common/lm/l4/include \
81		   -I$(SRCDIR)/577xx/drivers/common/lm/l5 \
82		   -I$(SRCDIR)/577xx/drivers/common/lm/l5/include \
83		   -I$(SRCDIR)/577xx/hsi/hw/include \
84		   -I$(SRCDIR)/577xx/hsi/mcp \
85		   -I$(SRCDIR)
86
87LDFLAGS		+= -dy -r -Ndrv/ip -Nmisc/mac
88CERRWARN	+= -_gcc=-Wno-switch
89CERRWARN	+= $(CNOWARN_UNINIT)
90CERRWARN	+= -_gcc=-Wno-parentheses
91CERRWARN	+= -_gcc=-Wno-unused-function
92CERRWARN	+= -_gcc=-Wno-unused-value
93CERRWARN	+= -_gcc=-Wno-unused-variable
94CERRWARN	+= -_gcc=-Wno-unused-but-set-variable
95CERRWARN	+= -_cc=-erroff=E_STATEMENT_NOT_REACHED
96CERRWARN	+= -_cc=-erroff=E_ARGUEMENT_MISMATCH
97CERRWARN	+= -_cc=-erroff=E_INTEGER_OVERFLOW_DETECTED
98CERRWARN	+= -_cc=-erroff=E_CONST_PROMOTED_UNSIGNED_LL
99CERRWARN	+= -_cc=-erroff=E_ENUM_VAL_OVERFLOWS_INT_MAX
100
101# a whole mess
102SMATCH=off
103
104LINTTAGS	+= -erroff=E_FUNC_RET_ALWAYS_IGNOR2
105LINTTAGS	+= -erroff=E_FUNC_RET_MAYBE_IGNORED2
106LINTTAGS	+= -erroff=E_STATIC_UNUSED
107LINTTAGS	+= -erroff=E_FUNC_SET_NOT_USED
108LINTTAGS	+= -erroff=E_BAD_PTR_CAST_ALIGN
109LINTTAGS	+= -erroff=E_CONSTANT_CONDITION
110LINTTAGS	+= -erroff=E_NOP_ELSE_STMT
111LINTTAGS	+= -erroff=E_NOP_IF_STMT
112LINTTAGS	+= -erroff=E_FUNC_ARG_UNUSED
113LINTTAGS	+= -erroff=E_FUNC_VAR_UNUSED
114LINTTAGS	+= -erroff=E_EXPR_NULL_EFFECT
115LINTTAGS	+= -erroff=E_STMT_NOT_REACHED
116LINTTAGS	+= -erroff=E_ASSIGN_NARROW_CONV
117LINTTAGS	+= -erroff=E_PTRDIFF_OVERFLOW
118LINTTAGS	+= -erroff=E_CASE_FALLTHRU
119LINTTAGS	+= -erroff=E_CONST_EXPR
120
121#
122#	Default build targets.
123#
124.KEEP_STATE:
125
126def:		$(DEF_DEPS)
127
128all:		$(ALL_DEPS)
129
130clean:		$(CLEAN_DEPS)
131
132clobber:	$(CLOBBER_DEPS)
133
134lint:		$(LINT_DEPS)
135
136modlintlib:	$(MODLINTLIB_DEPS)
137
138clean.lint:	$(CLEAN_LINT_DEPS)
139
140install:	$(INSTALL_DEPS)
141
142#
143#	Include common targets.
144#
145include $(UTSBASE)/intel/Makefile.targ
146