Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# CDDL HEADER START
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# The contents of this file are subject to the terms of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Common Development and Distribution License (the "License").
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# You may not use this file except in compliance with the License.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# or http://www.opensolaris.org/os/licensing.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# See the License for the specific language governing permissions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# and limitations under the License.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# When distributing Covered Code, include this CDDL HEADER in each
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# If applicable, add the following below this CDDL HEADER, with the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# fields enclosed by brackets "[]" replaced with your own identifying
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# information: Portions Copyright [yyyy] [name of copyright owner]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# CDDL HEADER END
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Use is subject to license terms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# This makefile drives the production of NS/SiS
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Fast Ethernet (SFE) driver module in intel systems
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Path to the base of the uts directory tree (usually /usr/src/uts).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceUTSBASE = ../..
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Define the module and object file sets.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceMODULE = sfe
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceOBJECTS = $(SFE_OBJS:%=$(OBJS_DIR)/%)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceLINTS = $(SFE_OBJS:%.o=$(LINTS_DIR)/%.ln)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Include common rules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luceinclude $(UTSBASE)/intel/Makefile.intel
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Define targets
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceALL_TARGET = $(BINARY)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceLINT_TARGET = $(MODULE).lint
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# GENERAL PURPOUSE GEM FLAGS: Tuning GEM for Solaris specific modes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceVFLAGS = -DVERSION='"2.6.1"'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceAFLAGS = -Di86pc
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceDFLAGS = -D"__INLINE__="
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceCFGFLAGS = -DGEM_CONFIG_POLLING -DGEM_CONFIG_GLDv3 -DGEM_CONFIG_VLAN \
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -DGEM_CONFIG_CKSUM_OFFLOAD -DGEM_CONFIG_ND \
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -DCONFIG_DP83815 -DCONFIG_SIS900 -DCONFIG_SIS7016 \
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -DCONFIG_MAC_ADDR_SIS630E -DCONFIG_OPT_IO -UCONFIG_OO \
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -DCONFIG_PATTERN_MATCH_DP83815
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# FAST PATH SECTION: Will activate usage of inlines as a regular functions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# on fast data path
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceCPPFLAGS += $(VFLAGS) $(AFLAGS) $(DFLAGS) $(CFGFLAGS) $(CCVERBOSE) \
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -I$(UTSBASE)/common/io/sfe
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceCFLAGS += $(CPPFLAGS) -xc99=%all
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceCERRWARN += -_gcc=-Wno-unused-label
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceCERRWARN += -_gcc=-Wno-switch
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceCERRWARN += -_gcc=-Wno-parentheses
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceCERRWARN += -_gcc=-Wno-uninitialized
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Driver depends on MAC & IP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceLDFLAGS += -dy -N misc/mac -N drv/ip
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Default build targets.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce.KEEP_STATE:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafssondef: $(DEF_DEPS)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luceall: $(ALL_DEPS)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luceclean: $(CLEAN_DEPS)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luceclobber: $(CLOBBER_DEPS)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Lucelint: $(LINT_DEPS)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Lucemodlintlib: $(MODLINTLIB_DEPS)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luceclean.lint: $(CLEAN_LINT_DEPS)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luceinstall: $(INSTALL_DEPS)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce# Include common targets.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce#
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luceinclude $(UTSBASE)/intel/Makefile.targ
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce