Print this page
10077 usr/src/uts/ Makefile changes for smatch
   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 2017 Joyent, Inc.
  14 #
  15 
  16 UTSBASE = ../..
  17 
  18 MODULE          = i40e
  19 OBJECTS         = $(I40E_OBJS:%=$(OBJS_DIR)/%) $(I40E_INTC_OBJS:%=$(OBJS_DIR)/%)
  20 LINTS           = $(I40E_OBJS:%.o=$(LINTS_DIR)/%.ln)
  21 ROOTMODULE      = $(ROOT_DRV_DIR)/$(MODULE)
  22 CONF_SRCDIR     = $(UTSBASE)/common/io/i40e
  23 
  24 include $(UTSBASE)/intel/Makefile.intel
  25 
  26 CPPFLAGS        += -I$(UTSBASE)/common/io/i40e
  27 CPPFLAGS        += -I$(UTSBASE)/common/io/i40e/core
  28 
  29 ALL_TARGET      = $(BINARY) $(CONFMOD)
  30 LINT_TARGET     = $(MODULE).lint
  31 INSTALL_TARGET  = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
  32 
  33 #
  34 # The Intel common code defines some values in header files that end up in all
  35 # of our objects. Therefore we don't try to lint for that.
  36 #
  37 LINTTAGS        += -erroff=E_STATIC_UNUSED
  38 LINTTAGS        += -erroff=E_ENUM_VAL_OVERFLOWS_INT_MAX
  39 
  40 #
  41 # The Intel common code defines some enums which are valid unsigned ints that
  42 # GCC is fine with, but not Studio.
  43 #
  44 CERRWARN   += -_cc=-erroff=E_ENUM_VAL_OVERFLOWS_INT_MAX
  45 



  46 LDFLAGS         += -dy -N misc/mac
  47 
  48 .KEEP_STATE:
  49 
  50 def:            $(DEF_DEPS)
  51 
  52 all:            $(ALL_DEPS)
  53 
  54 clean:          $(CLEAN_DEPS)
  55 
  56 clobber:        $(CLOBBER_DEPS)
  57 
  58 lint:           $(LINT_DEPS)
  59 
  60 modlintlib:     $(MODLINTLIB_DEPS)
  61 
  62 clean.lint:     $(CLEAN_LINT_DEPS)
  63 
  64 install:        $(INSTALL_DEPS)
  65 
   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) 2018, Joyent, Inc.
  14 #
  15 
  16 UTSBASE = ../..
  17 
  18 MODULE          = i40e
  19 OBJECTS         = $(I40E_OBJS:%=$(OBJS_DIR)/%) $(I40E_INTC_OBJS:%=$(OBJS_DIR)/%)
  20 LINTS           = $(I40E_OBJS:%.o=$(LINTS_DIR)/%.ln)
  21 ROOTMODULE      = $(ROOT_DRV_DIR)/$(MODULE)
  22 CONF_SRCDIR     = $(UTSBASE)/common/io/i40e
  23 
  24 include $(UTSBASE)/intel/Makefile.intel
  25 
  26 CPPFLAGS        += -I$(UTSBASE)/common/io/i40e
  27 CPPFLAGS        += -I$(UTSBASE)/common/io/i40e/core
  28 
  29 ALL_TARGET      = $(BINARY) $(CONFMOD)
  30 LINT_TARGET     = $(MODULE).lint
  31 INSTALL_TARGET  = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
  32 
  33 #
  34 # The Intel common code defines some values in header files that end up in all
  35 # of our objects. Therefore we don't try to lint for that.
  36 #
  37 LINTTAGS        += -erroff=E_STATIC_UNUSED
  38 LINTTAGS        += -erroff=E_ENUM_VAL_OVERFLOWS_INT_MAX
  39 
  40 #
  41 # The Intel common code defines some enums which are valid unsigned ints that
  42 # GCC is fine with, but not Studio.
  43 #
  44 CERRWARN   += -_cc=-erroff=E_ENUM_VAL_OVERFLOWS_INT_MAX
  45 
  46 # 3rd party code
  47 SMOFF += all_func_returns
  48 
  49 LDFLAGS         += -dy -N misc/mac
  50 
  51 .KEEP_STATE:
  52 
  53 def:            $(DEF_DEPS)
  54 
  55 all:            $(ALL_DEPS)
  56 
  57 clean:          $(CLEAN_DEPS)
  58 
  59 clobber:        $(CLOBBER_DEPS)
  60 
  61 lint:           $(LINT_DEPS)
  62 
  63 modlintlib:     $(MODLINTLIB_DEPS)
  64 
  65 clean.lint:     $(CLEAN_LINT_DEPS)
  66 
  67 install:        $(INSTALL_DEPS)
  68