Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# CDDL HEADER START
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# The contents of this file are subject to the terms of the
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Common Development and Distribution License (the "License").
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# You may not use this file except in compliance with the License.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# or http://www.opensolaris.org/os/licensing.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# See the License for the specific language governing permissions
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# and limitations under the License.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# When distributing Covered Code, include this CDDL HEADER in each
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# If applicable, add the following below this CDDL HEADER, with the
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# fields enclosed by brackets "[]" replaced with your own identifying
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# information: Portions Copyright [yyyy] [name of copyright owner]
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# CDDL HEADER END
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Use is subject to license terms.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# This makefile drives the production of NS/SiS
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Fast Ethernet (SFE) driver module in sparc systems
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Path to the base of the uts directory tree (usually /usr/src/uts).
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesUTSBASE = ../..
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Define the module and object file sets.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesMODULE = sfe
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesOBJECTS = $(SFE_OBJS:%=$(OBJS_DIR)/%)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesLINTS = $(SFE_OBJS:%.o=$(LINTS_DIR)/%.ln)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Include common rules.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesinclude $(UTSBASE)/sparc/Makefile.sparc
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Define targets
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesALL_TARGET = $(BINARY)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesLINT_TARGET = $(MODULE).lint
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# GENERAL PURPOUSE GEM FLAGS: Tuning GEM for Solaris specific modes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesVFLAGS = -DVERSION='"2.6.1"'
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesAFLAGS = -Dsun4u
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesDFLAGS = -D"__INLINE__="
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesCFGFLAGS = -DGEM_CONFIG_POLLING -DGEM_CONFIG_GLDv3 -DGEM_CONFIG_VLAN \
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes -DGEM_CONFIG_CKSUM_OFFLOAD -DGEM_CONFIG_ND \
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes -DCONFIG_DP83815 -DCONFIG_SIS900 -DCONFIG_SIS7016 \
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes -DCONFIG_MAC_ADDR_SIS630E -DCONFIG_OPT_IO -UCONFIG_OO \
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes -DCONFIG_PATTERN_MATCH_DP83815
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# FAST PATH SECTION: Will activate usage of inlines as a regular functions
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# on fast data path
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesCPPFLAGS += $(VFLAGS) $(AFLAGS) $(DFLAGS) $(CFGFLAGS) $(CCVERBOSE) \
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes -I$(UTSBASE)/common/io/sfe
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesCFLAGS += $(CPPFLAGS) -xc99=%all
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesCERRWARN += -_gcc=-Wno-unused-label
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesCERRWARN += -_gcc=-Wno-switch
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesCERRWARN += -_gcc=-Wno-parentheses
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesCERRWARN += -_gcc=-Wno-uninitialized
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Driver depends on MAC & IP
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesLDFLAGS += -dy -N misc/mac -N drv/ip
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Default build targets.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes.KEEP_STATE:
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesdef: $(DEF_DEPS)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesall: $(ALL_DEPS)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesclean: $(CLEAN_DEPS)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesclobber: $(CLOBBER_DEPS)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholeslint: $(LINT_DEPS)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesmodlintlib: $(MODLINTLIB_DEPS)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesclean.lint: $(CLEAN_LINT_DEPS)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesinstall: $(INSTALL_DEPS)
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes# Include common targets.
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes#
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholesinclude $(UTSBASE)/sparc/Makefile.targ
c9ce2b84cc0bf2caa39be615eb06f7a9b68378d5bnicholes