Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# CDDL HEADER START
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# The contents of this file are subject to the terms of the
9622934a862fa39a8e90c816c4136e293d75629djacobs# Common Development and Distribution License (the "License").
9622934a862fa39a8e90c816c4136e293d75629djacobs# You may not use this file except in compliance with the License.
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9622934a862fa39a8e90c816c4136e293d75629djacobs# or http://www.opensolaris.org/os/licensing.
9622934a862fa39a8e90c816c4136e293d75629djacobs# See the License for the specific language governing permissions
9622934a862fa39a8e90c816c4136e293d75629djacobs# and limitations under the License.
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# When distributing Covered Code, include this CDDL HEADER in each
9622934a862fa39a8e90c816c4136e293d75629djacobs# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
9622934a862fa39a8e90c816c4136e293d75629djacobs# If applicable, add the following below this CDDL HEADER, with the
9622934a862fa39a8e90c816c4136e293d75629djacobs# fields enclosed by brackets "[]" replaced with your own identifying
9622934a862fa39a8e90c816c4136e293d75629djacobs# information: Portions Copyright [yyyy] [name of copyright owner]
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# CDDL HEADER END
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
9622934a862fa39a8e90c816c4136e293d75629djacobs# Use is subject to license terms.
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# This makefile drives the production of NS/SiS
9622934a862fa39a8e90c816c4136e293d75629djacobs# Fast Ethernet (SFE) driver module in intel systems
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs
5f58abfdcb4ac30ee3299a9fc222d33bb75d22a7Norm Jacobs#
5f58abfdcb4ac30ee3299a9fc222d33bb75d22a7Norm Jacobs# Path to the base of the uts directory tree (usually /usr/src/uts).
5f58abfdcb4ac30ee3299a9fc222d33bb75d22a7Norm Jacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobsUTSBASE = ../..
9622934a862fa39a8e90c816c4136e293d75629djacobs
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# Define the module and object file sets.
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobsMODULE = sfe
9622934a862fa39a8e90c816c4136e293d75629djacobsOBJECTS = $(SFE_OBJS:%=$(OBJS_DIR)/%)
9622934a862fa39a8e90c816c4136e293d75629djacobsLINTS = $(SFE_OBJS:%.o=$(LINTS_DIR)/%.ln)
9622934a862fa39a8e90c816c4136e293d75629djacobsROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
9622934a862fa39a8e90c816c4136e293d75629djacobs
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# Include common rules.
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobsinclude $(UTSBASE)/intel/Makefile.intel
9622934a862fa39a8e90c816c4136e293d75629djacobs
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobs# Define targets
9622934a862fa39a8e90c816c4136e293d75629djacobs#
9622934a862fa39a8e90c816c4136e293d75629djacobsALL_TARGET = $(BINARY)
9622934a862fa39a8e90c816c4136e293d75629djacobsLINT_TARGET = $(MODULE).lint
9622934a862fa39a8e90c816c4136e293d75629djacobsINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
#
# GENERAL PURPOUSE GEM FLAGS: Tuning GEM for Solaris specific modes
#
VFLAGS = -DVERSION='"2.6.1"'
AFLAGS = -Di86pc
DFLAGS = -D"__INLINE__="
CFGFLAGS = -DGEM_CONFIG_POLLING -DGEM_CONFIG_GLDv3 -DGEM_CONFIG_VLAN \
-DGEM_CONFIG_CKSUM_OFFLOAD -DGEM_CONFIG_ND \
-DCONFIG_DP83815 -DCONFIG_SIS900 -DCONFIG_SIS7016 \
-DCONFIG_MAC_ADDR_SIS630E -DCONFIG_OPT_IO -UCONFIG_OO \
-DCONFIG_PATTERN_MATCH_DP83815
#
# FAST PATH SECTION: Will activate usage of inlines as a regular functions
# on fast data path
CPPFLAGS += $(VFLAGS) $(AFLAGS) $(DFLAGS) $(CFGFLAGS) $(CCVERBOSE) \
-I$(UTSBASE)/common/io/sfe
CFLAGS += $(CPPFLAGS) -xc99=%all
CERRWARN += -_gcc=-Wno-unused-label
CERRWARN += -_gcc=-Wno-switch
CERRWARN += -_gcc=-Wno-parentheses
CERRWARN += -_gcc=-Wno-uninitialized
#
# Driver depends on MAC & IP
#
LDFLAGS += -dy -N misc/mac -N drv/ip
#
# 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