Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
2548497d480c4f3e9b3fe14711bd510aa2157434gregames#
c4fbc4018fd2b6716673a38ee27eeb36cba41c5djwoolley# CDDL HEADER START
b30b04f639d479b96cc08c43ffa34c92ba275676ianh#
b30b04f639d479b96cc08c43ffa34c92ba275676ianh# The contents of this file are subject to the terms of the
b30b04f639d479b96cc08c43ffa34c92ba275676ianh# Common Development and Distribution License (the "License").
c4fbc4018fd2b6716673a38ee27eeb36cba41c5djwoolley# You may not use this file except in compliance with the License.
c4fbc4018fd2b6716673a38ee27eeb36cba41c5djwoolley#
c4fbc4018fd2b6716673a38ee27eeb36cba41c5djwoolley# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
c4fbc4018fd2b6716673a38ee27eeb36cba41c5djwoolley# or http://www.opensolaris.org/os/licensing.
f4e4643c309e5b5da60e13f9a25984d54b307caawrowe# See the License for the specific language governing permissions
f4e4643c309e5b5da60e13f9a25984d54b307caawrowe# and limitations under the License.
f4e4643c309e5b5da60e13f9a25984d54b307caawrowe#
2548497d480c4f3e9b3fe14711bd510aa2157434gregames# When distributing Covered Code, include this CDDL HEADER in each
2548497d480c4f3e9b3fe14711bd510aa2157434gregames# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
2548497d480c4f3e9b3fe14711bd510aa2157434gregames# If applicable, add the following below this CDDL HEADER, with the
ccb5c3af2d491a7cd1c246cd23f0fb083da417fagregames# fields enclosed by brackets "[]" replaced with your own identifying
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz# information: Portions Copyright [yyyy] [name of copyright owner]
da6e93dca0222159650783802e23172e3160605egregames#
da6e93dca0222159650783802e23172e3160605egregames# CDDL HEADER END
da6e93dca0222159650783802e23172e3160605egregames#
c927e13f298c42251296d33cc1fa3eb8232b843daaron
c927e13f298c42251296d33cc1fa3eb8232b843daaron#
c927e13f298c42251296d33cc1fa3eb8232b843daaron# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
c927e13f298c42251296d33cc1fa3eb8232b843daaron# Use is subject to license terms.
c927e13f298c42251296d33cc1fa3eb8232b843daaron#
9126ed10455a2a98a3a51c68ed1b356e1873e8e6aaron# This makefile drives the production of the Neterion Xframe
9126ed10455a2a98a3a51c68ed1b356e1873e8e6aaron# 10G Ethernet (XGE) driver module in x86 systems
9126ed10455a2a98a3a51c68ed1b356e1873e8e6aaron#
9126ed10455a2a98a3a51c68ed1b356e1873e8e6aaron
fa3ca21e09bac0dbc2045e9f53963ba46cfed5b1trawick#
fa3ca21e09bac0dbc2045e9f53963ba46cfed5b1trawick# Paths to the base of the uts directory trees
fa3ca21e09bac0dbc2045e9f53963ba46cfed5b1trawick#
fa3ca21e09bac0dbc2045e9f53963ba46cfed5b1trawickUTSBASE = ../..
18acb2c0df442ead1d075a1a2207cbb197725b14coar
18acb2c0df442ead1d075a1a2207cbb197725b14coar#
18acb2c0df442ead1d075a1a2207cbb197725b14coar# Define the module and object file sets.
18acb2c0df442ead1d075a1a2207cbb197725b14coar#
617f972690d850a52cd4e9ef2f32d356e0fae715aaronMODULE = xge
617f972690d850a52cd4e9ef2f32d356e0fae715aaronOBJECTS = $(XGE_HAL_OBJS:%=$(OBJS_DIR)/%) $(XGE_OBJS:%=$(OBJS_DIR)/%)
617f972690d850a52cd4e9ef2f32d356e0fae715aaronLINTS = $(XGE_HAL_OBJS:%.o=$(LINTS_DIR)/%.ln) $(XGE_OBJS:%.o=$(LINTS_DIR)/%.ln)
617f972690d850a52cd4e9ef2f32d356e0fae715aaronROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
617f972690d850a52cd4e9ef2f32d356e0fae715aaron
9278d5393ef084f4fc6d7ec8641af5959442c157jwoolley#
9278d5393ef084f4fc6d7ec8641af5959442c157jwoolley# Include common rules.
9278d5393ef084f4fc6d7ec8641af5959442c157jwoolley#
022cff78006f698453640e0a0e97cc5f8c9de59drbbinclude $(UTSBASE)/sparc/Makefile.sparc
022cff78006f698453640e0a0e97cc5f8c9de59drbb
022cff78006f698453640e0a0e97cc5f8c9de59drbb#
022cff78006f698453640e0a0e97cc5f8c9de59drbb# Define targets
526a776292f420ffeea0d081c61971ed381fad20stoddard#
526a776292f420ffeea0d081c61971ed381fad20stoddardALL_TARGET = $(BINARY)
526a776292f420ffeea0d081c61971ed381fad20stoddardLINT_TARGET = $(MODULE).lint
526a776292f420ffeea0d081c61971ed381fad20stoddardINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
526a776292f420ffeea0d081c61971ed381fad20stoddard
526a776292f420ffeea0d081c61971ed381fad20stoddard#
526a776292f420ffeea0d081c61971ed381fad20stoddard# GENERAL PURPOUSE HAL FLAGS: Tuning HAL for Solaris specific modes
526a776292f420ffeea0d081c61971ed381fad20stoddard#
526a776292f420ffeea0d081c61971ed381fad20stoddardHAL_CFLAGS = -DXGE_HAL_USE_MGMT_AUX
526a776292f420ffeea0d081c61971ed381fad20stoddard
526a776292f420ffeea0d081c61971ed381fad20stoddard#
452d2fd15cebd2da9331d5d765558a60b488c1a9rbb# TRACE SECTION: Possible values for MODULE, TRACE and ERR masks:
62ddc9851530478919d169ba9c34b80f60cf7718trawick#
62ddc9851530478919d169ba9c34b80f60cf7718trawick# XGE_COMPONENT_HAL_CONFIG 0x1
62ddc9851530478919d169ba9c34b80f60cf7718trawick# XGE_COMPONENT_HAL_FIFO 0x2
62ddc9851530478919d169ba9c34b80f60cf7718trawick# XGE_COMPONENT_HAL_RING 0x4
62ddc9851530478919d169ba9c34b80f60cf7718trawick# XGE_COMPONENT_HAL_CHANNEL 0x8
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_HAL_DEVICE 0x10
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_HAL_MM 0x20
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_HAL_QUEUE 0x40
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_HAL_STATS 0x100
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_OSDEP 0x1000
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_LL 0x2000
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_TOE 0x4000
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_RDMA 0x8000
904d7bf799c6216beb34519463596b4fce630308wrowe# XGE_COMPONENT_ALL 0xffffffff
17a4c6968b2fa692ff4dde12fe305230ee6b0421aaron#TRACE_CFLAGS = -DXGE_DEBUG_MODULE_MASK=0xffffffff \
17a4c6968b2fa692ff4dde12fe305230ee6b0421aaron# -DXGE_DEBUG_TRACE_MASK=0xffffffff \
17a4c6968b2fa692ff4dde12fe305230ee6b0421aaron# -DXGE_DEBUG_ERR_MASK=0xffffffff
17a4c6968b2fa692ff4dde12fe305230ee6b0421aaronTRACE_CFLAGS = -DXGE_DEBUG_MODULE_MASK=0x00003010 \
83b031099aa3dc8a5fd2f708e397818cbd16c9aajerenkrantz -DXGE_DEBUG_TRACE_MASK=0x00000000 \
83b031099aa3dc8a5fd2f708e397818cbd16c9aajerenkrantz -DXGE_DEBUG_ERR_MASK=0x00003010
83b031099aa3dc8a5fd2f708e397818cbd16c9aajerenkrantz
01e77cadbd9ad4962993380245bcc033dde523e4rbbXGE_CFLAGS = $(HAL_CFLAGS) $(TRACE_CFLAGS) $(CCVERBOSE) \
01e77cadbd9ad4962993380245bcc033dde523e4rbb -I$(UTSBASE)/common/io/xge/hal/include \
01e77cadbd9ad4962993380245bcc033dde523e4rbb -I$(UTSBASE)/common/io/xge/hal/xgehal \
8ea9794272347cfdd92861f46295406649f01afatrawick -I$(UTSBASE)/common/io/xge/drv -DSOLARIS
8ea9794272347cfdd92861f46295406649f01afatrawick
8ea9794272347cfdd92861f46295406649f01afatrawickCFLAGS += $(XGE_CFLAGS) -xO4 -xcrossfile -xc99=%all
8ea9794272347cfdd92861f46295406649f01afatrawickCFLAGS64 += $(XGE_CFLAGS) -xO4 -xcrossfile -xc99=%all
b900452c9c36031434d318880f023c0fb9143325rbb
b900452c9c36031434d318880f023c0fb9143325rbb#
b900452c9c36031434d318880f023c0fb9143325rbb# Driver depends on MAC & IP
b900452c9c36031434d318880f023c0fb9143325rbb#
b900452c9c36031434d318880f023c0fb9143325rbbLDFLAGS += -dy -N misc/mac -N drv/ip
b900452c9c36031434d318880f023c0fb9143325rbb
b900452c9c36031434d318880f023c0fb9143325rbb# Lint flag
b900452c9c36031434d318880f023c0fb9143325rbb#
b900452c9c36031434d318880f023c0fb9143325rbbLINTFLAGS += $(XGE_CFLAGS) -Xc99=%all
43053faf24ffe7657bb32bc06d4058dedf3ef053rbb
8b666e1fb772b6fe45de3604b224f3e1f2cfd620rbb#
c453a141db60a5b19649eac508f4851a8729c556rbb# For now, disable these lint checks; maintainers should endeavor
c453a141db60a5b19649eac508f4851a8729c556rbb# to investigate and remove these for maximum lint coverage.
c453a141db60a5b19649eac508f4851a8729c556rbb# Please do not carry these forward to new Makefiles.
8b91dcac0e1ef7796c72d16b0962267313cac486jerenkrantz#
8b91dcac0e1ef7796c72d16b0962267313cac486jerenkrantzLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
8b91dcac0e1ef7796c72d16b0962267313cac486jerenkrantzLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
6ce942b017db75b559a42bdc2d7b8ea9e869a956wroweLINTTAGS += -erroff=E_STATIC_UNUSED
6ce942b017db75b559a42bdc2d7b8ea9e869a956wrowe
6ce942b017db75b559a42bdc2d7b8ea9e869a956wroweCERRWARN += -_gcc=-Wno-parentheses
6ce942b017db75b559a42bdc2d7b8ea9e869a956wroweCERRWARN += -_gcc=-Wno-unused-variable
6ce942b017db75b559a42bdc2d7b8ea9e869a956wroweCERRWARN += -_gcc=-Wno-unused-label
6ce942b017db75b559a42bdc2d7b8ea9e869a956wroweCERRWARN += -_gcc=-Wno-empty-body
6ce942b017db75b559a42bdc2d7b8ea9e869a956wroweCERRWARN += -_gcc=-Wno-uninitialized
6ce942b017db75b559a42bdc2d7b8ea9e869a956wrowe
7dfed2b71c9c4223996cbd7c5c0c85c7c8fef2a4rbb#
7dfed2b71c9c4223996cbd7c5c0c85c7c8fef2a4rbb#
6ce942b017db75b559a42bdc2d7b8ea9e869a956wrowe# Default build targets.
7dfed2b71c9c4223996cbd7c5c0c85c7c8fef2a4rbb#
574f6ff9ee80ef4f772649c5c8319b764a8abe42jerenkrantz.KEEP_STATE:
574f6ff9ee80ef4f772649c5c8319b764a8abe42jerenkrantz
574f6ff9ee80ef4f772649c5c8319b764a8abe42jerenkrantzdef: $(DEF_DEPS)
6d7d70dbda8e461d87f2d41e323755496ae3ebc7trawick
6d7d70dbda8e461d87f2d41e323755496ae3ebc7trawickall: $(ALL_DEPS)
6d7d70dbda8e461d87f2d41e323755496ae3ebc7trawick
22a25f3393393b781e214f4abef17950bcb8bbe3jerenkrantzclean: $(CLEAN_DEPS)
22a25f3393393b781e214f4abef17950bcb8bbe3jerenkrantz
22a25f3393393b781e214f4abef17950bcb8bbe3jerenkrantzclobber: $(CLOBBER_DEPS)
a310497ca9c5112d759871e1b7d9f6a40fb78bcfwrowe
a310497ca9c5112d759871e1b7d9f6a40fb78bcfwrowelint: $(LINT_DEPS)
a310497ca9c5112d759871e1b7d9f6a40fb78bcfwrowe
a310497ca9c5112d759871e1b7d9f6a40fb78bcfwrowemodlintlib: $(MODLINTLIB_DEPS)
a310497ca9c5112d759871e1b7d9f6a40fb78bcfwrowe
a310497ca9c5112d759871e1b7d9f6a40fb78bcfwroweclean.lint: $(CLEAN_LINT_DEPS)
a310497ca9c5112d759871e1b7d9f6a40fb78bcfwrowe
8bda0627eb2aca9e678c1303a0423d33069388dfwroweinstall: $(INSTALL_DEPS)
de63b1eeff87cd19cf42bb83cca85381026965ddjerenkrantz
f00bc25ff5027f3a40e9cd0ade782641bd0bf1d0wrowe#
e36ef0d081aa59867688bcbb3da65952ec16fae3rbb# Include common targets.
e36ef0d081aa59867688bcbb3da65952ec16fae3rbb#
e36ef0d081aa59867688bcbb3da65952ec16fae3rbbinclude $(UTSBASE)/sparc/Makefile.targ
e36ef0d081aa59867688bcbb3da65952ec16fae3rbb