# # This file and its contents are supplied under the terms of the # Common Development and Distribution License ("CDDL"), version 1.0. # You may only use this file in accordance with the terms of version # 1.0 of the CDDL. # # A full copy of the text of the CDDL should have accompanied this # source. A copy of the CDDL is also available via the Internet at # http://www.illumos.org/license/CDDL. # # # Copyright (c) 2019, Joyent, Inc. # # # uts/intel/bnxe/Makefile # # This makefile drives the production of the bnxe # driver kernel module. # # intel architecture dependent # # # Paths to the base of the uts directory trees # UTSBASE = ../.. # # Define the module and object file sets. # MODULE = bnxe OBJECTS = $(BNXE_OBJS:%=$(OBJS_DIR)/%) LINTS = $(LINTS_DIR)/bnxe_lint.ln ROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE) SRCDIR = $(UTSBASE)/common/io/bnxe CONF_SRCDIR = $(SRCDIR) # # Include common rules. # include $(UTSBASE)/intel/Makefile.intel # # Define targets # ALL_TARGET = $(BINARY) $(CONFMOD) LINT_TARGET = $(MODULE).lint INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE) C99LMODE= -Xc99=%all # # Driver-specific flags # XXX inline bits were originally set to inline # CPPFLAGS += -DLM_RXPKT_NON_CONTIGUOUS \ -DELINK_ENHANCEMENTS \ -DELINK_57711E_SUPPORT \ -DELINK_DEBUG \ -D__inline= \ -D_inline= \ -D__BASENAME__=\"bnxe\" \ -D__SunOS \ -D__S11 \ -DILLUMOS \ -DLITTLE_ENDIAN \ -DLITTLE_ENDIAN_HOST \ -D__LITTLE_ENDIAN \ -I$(SRCDIR)/577xx/include \ -I$(SRCDIR)/577xx/drivers/common/ecore \ -I$(SRCDIR)/577xx/drivers/common/include \ -I$(SRCDIR)/577xx/drivers/common/include/l4 \ -I$(SRCDIR)/577xx/drivers/common/include/l5 \ -I$(SRCDIR)/577xx/drivers/common/lm/device \ -I$(SRCDIR)/577xx/drivers/common/lm/fw \ -I$(SRCDIR)/577xx/drivers/common/lm/include \ -I$(SRCDIR)/577xx/drivers/common/lm/l4 \ -I$(SRCDIR)/577xx/drivers/common/lm/l4/include \ -I$(SRCDIR)/577xx/drivers/common/lm/l5 \ -I$(SRCDIR)/577xx/drivers/common/lm/l5/include \ -I$(SRCDIR)/577xx/hsi/hw/include \ -I$(SRCDIR)/577xx/hsi/mcp \ -I$(SRCDIR) LDFLAGS += -dy -r -Ndrv/ip -Nmisc/mac CERRWARN += -_gcc=-Wno-switch CERRWARN += $(CNOWARN_UNINIT) CERRWARN += -_gcc=-Wno-parentheses CERRWARN += -_gcc=-Wno-unused-function CERRWARN += -_gcc=-Wno-unused-value CERRWARN += -_gcc=-Wno-unused-variable CERRWARN += -_gcc=-Wno-unused-but-set-variable CERRWARN += -_cc=-erroff=E_STATEMENT_NOT_REACHED CERRWARN += -_cc=-erroff=E_ARGUEMENT_MISMATCH CERRWARN += -_cc=-erroff=E_INTEGER_OVERFLOW_DETECTED CERRWARN += -_cc=-erroff=E_CONST_PROMOTED_UNSIGNED_LL CERRWARN += -_cc=-erroff=E_ENUM_VAL_OVERFLOWS_INT_MAX # a whole mess SMATCH=off LINTTAGS += -erroff=E_FUNC_RET_ALWAYS_IGNOR2 LINTTAGS += -erroff=E_FUNC_RET_MAYBE_IGNORED2 LINTTAGS += -erroff=E_STATIC_UNUSED LINTTAGS += -erroff=E_FUNC_SET_NOT_USED LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN LINTTAGS += -erroff=E_CONSTANT_CONDITION LINTTAGS += -erroff=E_NOP_ELSE_STMT LINTTAGS += -erroff=E_NOP_IF_STMT LINTTAGS += -erroff=E_FUNC_ARG_UNUSED LINTTAGS += -erroff=E_FUNC_VAR_UNUSED LINTTAGS += -erroff=E_EXPR_NULL_EFFECT LINTTAGS += -erroff=E_STMT_NOT_REACHED LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW LINTTAGS += -erroff=E_CASE_FALLTHRU LINTTAGS += -erroff=E_CONST_EXPR # # Default build targets. # .KEEP_STATE: def: $(DEF_DEPS) all: $(ALL_DEPS) clean: $(CLEAN_DEPS) clobber: $(CLOBBER_DEPS) lint: $(LINT_DEPS) modlintlib: $(MODLINTLIB_DEPS) clean.lint: $(CLEAN_LINT_DEPS) install: $(INSTALL_DEPS) # # Include common targets. # include $(UTSBASE)/intel/Makefile.targ