Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
7f007e36bec06aba6b3a0f84a64f2abf99edfcd8gstein#
aea283240d4222da5426169a68e307872d240044jerenkrantz# CDDL HEADER START
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj#
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# The contents of this file are subject to the terms of the
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# Common Development and Distribution License (the "License").
6a01f2d5ec2024b68edd1d42056b41a88dc0a935aaron# You may not use this file except in compliance with the License.
6a01f2d5ec2024b68edd1d42056b41a88dc0a935aaron#
8721697e2aece27b0e738519329f7976c72b27bfjerenkrantz# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4a257be29f8aeab984fe5622fa69e0b2aab204d7jerenkrantz# or http://www.opensolaris.org/os/licensing.
91cacb801f6c0215b38322f6d2fc58cbfedfecfbjerenkrantz# See the License for the specific language governing permissions
91cacb801f6c0215b38322f6d2fc58cbfedfecfbjerenkrantz# and limitations under the License.
df14f0d3a5191cdd7c4bb5b03acd135d43a6f51brbb#
df14f0d3a5191cdd7c4bb5b03acd135d43a6f51brbb# When distributing Covered Code, include this CDDL HEADER in each
ab71b233b3a36489e44a7b061c48293be0b17788jwoolley# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
571760de5e60c0b459cb11be45507b923cd023eejwoolley# If applicable, add the following below this CDDL HEADER, with the
571760de5e60c0b459cb11be45507b923cd023eejwoolley# fields enclosed by brackets "[]" replaced with your own identifying
9180a5933673ffb1af633c255ceee029340f3b1erbb# information: Portions Copyright [yyyy] [name of copyright owner]
bcb6e1be6041dfeb549c8ea8d37f97ad4e90a0c3rbb#
9bd71e35f5d26d26d23fe3a677401828e842ed72wrowe# CDDL HEADER END
2900ab946a2d76b73a14cebfe2985d253f01c967stoddard#
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb#
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
b876b7bcf0ce3d232da723246d709e8dbbfe8762rbb# Use is subject to license terms.
cf6bf6c34c936e6a6fe731dbce4a5c3c8bf8e9a3gstein#
35330e0d79ceb8027223bbb8330a381b1f989d6etrawick# This makefile drives the production of the Neterion Xframe
6f6f4a4bca281779d196acbdd5c017bb90858305trawick# 10G Ethernet (XGE) driver module in x86 systems
8dd4618c4709236b4ea297d7250d282e463ce2d8rbb#
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick
2deb319e6b3de239f45c16a3e9e836d44f1f7108rbb#
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb# Paths to the base of the uts directory trees
70f6f32765cfaadd6da8de6f0fea97ddd72d8fadmanoj#
2a6c49cfaef5979a5a06098f3ce987cd76769409manojUTSBASE = ../..
af4c982a7cf4515f124935f99a329744035fc699slive
af4c982a7cf4515f124935f99a329744035fc699slive#
af4c982a7cf4515f124935f99a329744035fc699slive# Define the module and object file sets.
af4c982a7cf4515f124935f99a329744035fc699slive#
af4c982a7cf4515f124935f99a329744035fc699sliveMODULE = xge
af4c982a7cf4515f124935f99a329744035fc699sliveOBJECTS = $(XGE_HAL_OBJS:%=$(OBJS_DIR)/%) $(XGE_OBJS:%=$(OBJS_DIR)/%)
af4c982a7cf4515f124935f99a329744035fc699sliveLINTS = $(XGE_HAL_OBJS:%.o=$(LINTS_DIR)/%.ln) $(XGE_OBJS:%.o=$(LINTS_DIR)/%.ln)
2a6c49cfaef5979a5a06098f3ce987cd76769409manojROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
531c23ff01a2489646f0a2029097013b328d935agstein
2f316e524ff96c16278c4f3361bac3f69179005dwrowe#
2f316e524ff96c16278c4f3361bac3f69179005dwrowe# Include common rules.
2f316e524ff96c16278c4f3361bac3f69179005dwrowe#
2f316e524ff96c16278c4f3361bac3f69179005dwroweinclude $(UTSBASE)/sparc/Makefile.sparc
2f316e524ff96c16278c4f3361bac3f69179005dwrowe
2f316e524ff96c16278c4f3361bac3f69179005dwrowe#
2f316e524ff96c16278c4f3361bac3f69179005dwrowe# Define targets
2f316e524ff96c16278c4f3361bac3f69179005dwrowe#
2f316e524ff96c16278c4f3361bac3f69179005dwroweALL_TARGET = $(BINARY)
2f316e524ff96c16278c4f3361bac3f69179005dwroweLINT_TARGET = $(MODULE).lint
2f316e524ff96c16278c4f3361bac3f69179005dwroweINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
2f316e524ff96c16278c4f3361bac3f69179005dwrowe
2f316e524ff96c16278c4f3361bac3f69179005dwrowe#
2f316e524ff96c16278c4f3361bac3f69179005dwrowe# GENERAL PURPOUSE HAL FLAGS: Tuning HAL for Solaris specific modes
c00273b9c51c617ede471e9cb95c22420f1227fbbrianp#
c00273b9c51c617ede471e9cb95c22420f1227fbbrianpHAL_CFLAGS = -DXGE_HAL_USE_MGMT_AUX
c00273b9c51c617ede471e9cb95c22420f1227fbbrianp
c00273b9c51c617ede471e9cb95c22420f1227fbbrianp#
54e1babd5a5a56c576eeeace54110150769cc916coar# TRACE SECTION: Possible values for MODULE, TRACE and ERR masks:
54e1babd5a5a56c576eeeace54110150769cc916coar#
54e1babd5a5a56c576eeeace54110150769cc916coar# XGE_COMPONENT_HAL_CONFIG 0x1
54e1babd5a5a56c576eeeace54110150769cc916coar# XGE_COMPONENT_HAL_FIFO 0x2
54e1babd5a5a56c576eeeace54110150769cc916coar# XGE_COMPONENT_HAL_RING 0x4
7fe18c15b669db9d191859695901dc4fcf3829dawrowe# XGE_COMPONENT_HAL_CHANNEL 0x8
7fe18c15b669db9d191859695901dc4fcf3829dawrowe# XGE_COMPONENT_HAL_DEVICE 0x10
7fe18c15b669db9d191859695901dc4fcf3829dawrowe# XGE_COMPONENT_HAL_MM 0x20
b84f66c93f820824b1d5455181f55598b766319cwrowe# XGE_COMPONENT_HAL_QUEUE 0x40
7fe18c15b669db9d191859695901dc4fcf3829dawrowe# XGE_COMPONENT_HAL_STATS 0x100
976501adbc040220270f7d1d77c4b8373033be69wrowe# XGE_COMPONENT_OSDEP 0x1000
976501adbc040220270f7d1d77c4b8373033be69wrowe# XGE_COMPONENT_LL 0x2000
976501adbc040220270f7d1d77c4b8373033be69wrowe# XGE_COMPONENT_TOE 0x4000
976501adbc040220270f7d1d77c4b8373033be69wrowe# XGE_COMPONENT_RDMA 0x8000
976501adbc040220270f7d1d77c4b8373033be69wrowe# XGE_COMPONENT_ALL 0xffffffff
b84f66c93f820824b1d5455181f55598b766319cwrowe#TRACE_CFLAGS = -DXGE_DEBUG_MODULE_MASK=0xffffffff \
bf9acc131271d18db51d30ace549d3c3b6a2b9fbrbb# -DXGE_DEBUG_TRACE_MASK=0xffffffff \
bf9acc131271d18db51d30ace549d3c3b6a2b9fbrbb# -DXGE_DEBUG_ERR_MASK=0xffffffff
bf9acc131271d18db51d30ace549d3c3b6a2b9fbrbbTRACE_CFLAGS = -DXGE_DEBUG_MODULE_MASK=0x00003010 \
bf9acc131271d18db51d30ace549d3c3b6a2b9fbrbb -DXGE_DEBUG_TRACE_MASK=0x00000000 \
bf9acc131271d18db51d30ace549d3c3b6a2b9fbrbb -DXGE_DEBUG_ERR_MASK=0x00003010
bf9acc131271d18db51d30ace549d3c3b6a2b9fbrbb
bf9acc131271d18db51d30ace549d3c3b6a2b9fbrbbXGE_CFLAGS = $(HAL_CFLAGS) $(TRACE_CFLAGS) $(CCVERBOSE) \
b84f66c93f820824b1d5455181f55598b766319cwrowe -I$(UTSBASE)/common/io/xge/hal/include \
b84f66c93f820824b1d5455181f55598b766319cwrowe -I$(UTSBASE)/common/io/xge/hal/xgehal \
b84f66c93f820824b1d5455181f55598b766319cwrowe -I$(UTSBASE)/common/io/xge/drv -DSOLARIS
b84f66c93f820824b1d5455181f55598b766319cwrowe
a601d863bd772fefc4dc82a883589d8be6a44811wroweCFLAGS += $(XGE_CFLAGS) -xO4 -xcrossfile -xc99=%all
a601d863bd772fefc4dc82a883589d8be6a44811wroweCFLAGS64 += $(XGE_CFLAGS) -xO4 -xcrossfile -xc99=%all
79d5106a9b65b956d646f5daae4b94bc79e315b8trawick
dc96a5e6f9af3c514df4c61ab9468fcf97f9846fwrowe#
dc96a5e6f9af3c514df4c61ab9468fcf97f9846fwrowe# Driver depends on MAC & IP
dc96a5e6f9af3c514df4c61ab9468fcf97f9846fwrowe#
976501adbc040220270f7d1d77c4b8373033be69wroweLDFLAGS += -dy -N misc/mac -N drv/ip
976501adbc040220270f7d1d77c4b8373033be69wrowe
dc96a5e6f9af3c514df4c61ab9468fcf97f9846fwrowe# Lint flag
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantz#
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzLINTFLAGS += $(XGE_CFLAGS) -Xc99=%all
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantz
924c8dd40352ca7775704a31a7a77ab86dc951b4ianh#
852271d782b83c92c4581c9f1bafe342169edc89jerenkrantz# For now, disable these lint checks; maintainers should endeavor
852271d782b83c92c4581c9f1bafe342169edc89jerenkrantz# to investigate and remove these for maximum lint coverage.
9fccaed3f2d8df9e68dcd31b52885a17853b9f86lars# Please do not carry these forward to new Makefiles.
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantz#
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzLINTTAGS += -erroff=E_STATIC_UNUSED
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantz
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzCERRWARN += -_gcc=-Wno-parentheses
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzCERRWARN += -_gcc=-Wno-unused-variable
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzCERRWARN += -_gcc=-Wno-unused-label
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzCERRWARN += -_gcc=-Wno-empty-body
39cf872a6df49bd5affe2ca6eaf683918184fbb4trawickCERRWARN += -_gcc=-Wno-uninitialized
39cf872a6df49bd5affe2ca6eaf683918184fbb4trawick
39cf872a6df49bd5affe2ca6eaf683918184fbb4trawick#
39cf872a6df49bd5affe2ca6eaf683918184fbb4trawick#
39cf872a6df49bd5affe2ca6eaf683918184fbb4trawick# Default build targets.
108db76823f2261a33aaa3621af6a1e54db17a69trawick#
108db76823f2261a33aaa3621af6a1e54db17a69trawick.KEEP_STATE:
108db76823f2261a33aaa3621af6a1e54db17a69trawick
108db76823f2261a33aaa3621af6a1e54db17a69trawickdef: $(DEF_DEPS)
aea283240d4222da5426169a68e307872d240044jerenkrantz
108db76823f2261a33aaa3621af6a1e54db17a69trawickall: $(ALL_DEPS)
d6cd1a8379e58e6b1599155130c8b6d150cca182trawick
d6cd1a8379e58e6b1599155130c8b6d150cca182trawickclean: $(CLEAN_DEPS)
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantz
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantzclobber: $(CLOBBER_DEPS)
33f5961d34a8b5390cebad0543b3ebe67830e5d7jerenkrantz
33f5961d34a8b5390cebad0543b3ebe67830e5d7jerenkrantzlint: $(LINT_DEPS)
33f5961d34a8b5390cebad0543b3ebe67830e5d7jerenkrantz
33f5961d34a8b5390cebad0543b3ebe67830e5d7jerenkrantzmodlintlib: $(MODLINTLIB_DEPS)
33f5961d34a8b5390cebad0543b3ebe67830e5d7jerenkrantz
33f5961d34a8b5390cebad0543b3ebe67830e5d7jerenkrantzclean.lint: $(CLEAN_LINT_DEPS)
33f5961d34a8b5390cebad0543b3ebe67830e5d7jerenkrantz
33f5961d34a8b5390cebad0543b3ebe67830e5d7jerenkrantzinstall: $(INSTALL_DEPS)
54e1babd5a5a56c576eeeace54110150769cc916coar
54e1babd5a5a56c576eeeace54110150769cc916coar#
54e1babd5a5a56c576eeeace54110150769cc916coar# Include common targets.
54e1babd5a5a56c576eeeace54110150769cc916coar#
54e1babd5a5a56c576eeeace54110150769cc916coarinclude $(UTSBASE)/sparc/Makefile.targ
54e1babd5a5a56c576eeeace54110150769cc916coar