Makefile revision f8919bdadda3ebb97bd55cc14a16e0271ed57615
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# CDDL HEADER START
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# The contents of this file are subject to the terms of the
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Common Development and Distribution License (the "License").
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# You may not use this file except in compliance with the License.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# or http://www.opensolaris.org/os/licensing.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# See the License for the specific language governing permissions
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# and limitations under the License.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# When distributing Covered Code, include this CDDL HEADER in each
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# If applicable, add the following below this CDDL HEADER, with the
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# fields enclosed by brackets "[]" replaced with your own identifying
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# information: Portions Copyright [yyyy] [name of copyright owner]
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# CDDL HEADER END
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Use is subject to license terms.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# ident "%Z%%M% %I% %E% SMI"
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# This makefile drives the production of NS/SiS
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Fast Ethernet (SFE) driver module in intel systems
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Path to the base of the uts directory tree (usually /usr/src/uts).
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiUTSBASE = ../..
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Define the module and object file sets.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiMODULE = sfe
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiOBJECTS = $(SFE_OBJS:%=$(OBJS_DIR)/%)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiLINTS = $(SFE_OBJS:%.o=$(LINTS_DIR)/%.ln)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Include common rules.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskiinclude $(UTSBASE)/intel/Makefile.intel
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Define targets
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiALL_TARGET = $(BINARY)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiLINT_TARGET = $(MODULE).lint
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Overrides
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# For now, disable these lint checks; maintainers should endeavor
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# to investigate and remove these for maximum lint coverage.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Please do not carry these forward to new Makefiles.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# LINTTAGS += -erroff=E_STATIC_UNUSED
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# GENERAL PURPOUSE GEM FLAGS: Tuning GEM for Solaris specific modes
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiVFLAGS = -DVERSION='"2.6.1"'
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiAFLAGS = -Di86pc
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiDFLAGS = -D"__INLINE__="
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiCFGFLAGS = -DGEM_CONFIG_POLLING -DGEM_CONFIG_GLDv3 -DGEM_CONFIG_VLAN \
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski -DGEM_CONFIG_CKSUM_OFFLOAD -DGEM_CONFIG_ND \
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski -DCONFIG_DP83815 -DCONFIG_SIS900 -DCONFIG_SIS7016 \
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski -DCONFIG_MAC_ADDR_SIS630E -DCONFIG_OPT_IO -UCONFIG_OO \
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski -DCONFIG_PATTERN_MATCH_DP83815
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# FAST PATH SECTION: Will activate usage of inlines as a regular functions
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# on fast data path
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiCPPFLAGS += $(VFLAGS) $(AFLAGS) $(DFLAGS) $(CFGFLAGS) $(CCVERBOSE) \
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski -I$(UTSBASE)/common/io/sfe
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiCFLAGS += $(CPPFLAGS) -xc99=%all
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Driver depends on MAC & IP
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till MossakowskiLDFLAGS += -dy -N misc/mac -N drv/ip
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Default build targets.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski.KEEP_STATE:
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskidef: $(DEF_DEPS)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskiall: $(ALL_DEPS)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskiclean: $(CLEAN_DEPS)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskiclobber: $(CLOBBER_DEPS)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskilint: $(LINT_DEPS)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskimodlintlib: $(MODLINTLIB_DEPS)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskiclean.lint: $(CLEAN_LINT_DEPS)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskiinstall: $(INSTALL_DEPS)
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski# Include common targets.
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski#
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowskiinclude $(UTSBASE)/intel/Makefile.targ
cbc7f7ea90538f481b528959e9b6cf837b0dd785Till Mossakowski