Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
f743002678eb67b99bbc29fee116b65d9530fec0wrowe#
80833bb9a1bf25dcf19e814438a4b311d2e1f4cffuankg# CDDL HEADER START
a34684a59b60a4173c25035d0c627ef17e6dc215rpluem#
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic# The contents of this file are subject to the terms of the
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic# Common Development and Distribution License (the "License").
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic# You may not use this file except in compliance with the License.
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic#
4da61833a1cbbca94094f9653fd970582b97a72etrawick# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4da61833a1cbbca94094f9653fd970582b97a72etrawick# or http://www.opensolaris.org/os/licensing.
4da61833a1cbbca94094f9653fd970582b97a72etrawick# See the License for the specific language governing permissions
4da61833a1cbbca94094f9653fd970582b97a72etrawick# and limitations under the License.
4da61833a1cbbca94094f9653fd970582b97a72etrawick#
4789804be088bcd86ae637a29cdb7fda25169521jailletc# When distributing Covered Code, include this CDDL HEADER in each
4789804be088bcd86ae637a29cdb7fda25169521jailletc# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
4789804be088bcd86ae637a29cdb7fda25169521jailletc# If applicable, add the following below this CDDL HEADER, with the
4789804be088bcd86ae637a29cdb7fda25169521jailletc# fields enclosed by brackets "[]" replaced with your own identifying
e50c3026198fd496f183cda4c32a202925476778covener# information: Portions Copyright [yyyy] [name of copyright owner]
e50c3026198fd496f183cda4c32a202925476778covener#
e50c3026198fd496f183cda4c32a202925476778covener# CDDL HEADER END
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin#
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic#
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic# Use is subject to license terms.
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavic#
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavic
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic#
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic# This makefile drives the production of the Sun
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic# 10G/1G Ethernet leaf driver kernel module.
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic#
69301145375a889e7e37caf7cc7321ac0f91801erpluem
69301145375a889e7e37caf7cc7321ac0f91801erpluem#
69301145375a889e7e37caf7cc7321ac0f91801erpluem# Path to the base of the uts directory tree (usually /usr/src/uts).
506bfe33206b2fece40ef25f695af39dd4130facjkaluza#
506bfe33206b2fece40ef25f695af39dd4130facjkaluzaUTSBASE = ../..
506bfe33206b2fece40ef25f695af39dd4130facjkaluza
506bfe33206b2fece40ef25f695af39dd4130facjkaluza#
d58a848a016d401b965111e50ef829e1641f7834minfrin# Define the module and object file sets.
d58a848a016d401b965111e50ef829e1641f7834minfrin#
d58a848a016d401b965111e50ef829e1641f7834minfrinMODULE = nxge
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfNXGE_OBJECTS = $(NXGE_OBJS) $(NXGE_NPI_OBJS)
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfOBJECTS = $(NXGE_OBJECTS:%=$(OBJS_DIR)/%)
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfLINTS = $(NXGE_OBJECTS:%.o=$(LINTS_DIR)/%.ln)
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavicROOTMODULE = $(ROOT_PSM_DRV_DIR)/$(MODULE)
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavicCONF_SRCDIR = $(UTSBASE)/common/io/nxge
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic#
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic# Include common rules.
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic#
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavicinclude $(UTSBASE)/sun4u/Makefile.sun4u
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic#
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic# Override defaults to build a unique, local modstubs.o.
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic#
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicMODSTUBS_DIR = $(OBJS_DIR)
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCLEANFILES += $(MODSTUBS_O)
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener#
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener# Define targets
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener#
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerALL_TARGET = $(BINARY)
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerLINT_TARGET = $(MODULE).lint
44ff304057225e944e220e981d434a046d14cf06covenerINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
44ff304057225e944e220e981d434a046d14cf06covener
44ff304057225e944e220e981d434a046d14cf06covener#
44ff304057225e944e220e981d434a046d14cf06covener#
5d1ba75b8794925e67591c209085a49279791de9covener# Turn on doubleword alignment for 64 bit registers
5d1ba75b8794925e67591c209085a49279791de9covener#
5d1ba75b8794925e67591c209085a49279791de9covenerCFLAGS += -dalign
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand#
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand# Include nxge specific header files
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand#
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrandINC_PATH += -I$(UTSBASE)/common
caad2986f81ab263f7af41467dd622dc9add17f3ylavicINC_PATH += -I$(UTSBASE)/common/io/nxge/npi
caad2986f81ab263f7af41467dd622dc9add17f3ylavicINC_PATH += -I$(UTSBASE)/common/sys/nxge
caad2986f81ab263f7af41467dd622dc9add17f3ylavic#
caad2986f81ab263f7af41467dd622dc9add17f3ylavic#
45a10d38e6051fd7bdf9d742aaae633d97ff02abjailletc# lint pass one enforcement
f7317ff316c2b141feea31bddb74d5d3fa1584edjorton#
f7317ff316c2b141feea31bddb74d5d3fa1584edjortonCFLAGS += -DSOLARIS
2165214331e4afafca4048f66f303d0253d7b001covener#
a34684a59b60a4173c25035d0c627ef17e6dc215rpluemLINTFLAGS += -DSOLARIS
a34684a59b60a4173c25035d0c627ef17e6dc215rpluem#
1e2d421a36999d292042a5539971070d54aa6c63ylavic# STREAMS, DDI API limitations and other ON header file definitions such as ethernet.h
1e2d421a36999d292042a5539971070d54aa6c63ylavic# force us to turn off these lint checks.
1e2d421a36999d292042a5539971070d54aa6c63ylavic#
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedooh
0b67eb8568cd58bb77082703951679b42cf098actrawickCERRWARN += -_gcc=-Wno-unused-label
0b67eb8568cd58bb77082703951679b42cf098actrawickCERRWARN += -_gcc=-Wno-parentheses
0b67eb8568cd58bb77082703951679b42cf098actrawickCERRWARN += -_gcc=-Wno-switch
0b67eb8568cd58bb77082703951679b42cf098actrawickCERRWARN += -_gcc=-Wno-uninitialized
5ef3c61605a3a021ff71f488983cb0065f8e1a79covenerCERRWARN += -_gcc=-Wno-type-limits
fb1985a97912b25ec6564c73e610a31e5fc6e25fcovener
09c87c777bed1655621bb20e1c46cb6b1a63279dcovener#
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavic# Driver depends on mac & IP
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavic#
3060ce7f798fbda7999cd4ddf89b525d2b294185covenerLDFLAGS += -dy -N misc/mac -N drv/ip
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic#
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic# Default build targets.
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletc#
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletc.KEEP_STATE:
e466c40e1801982602ee0200c9e8b61cc148742djailletc
e466c40e1801982602ee0200c9e8b61cc148742djailletcdef: $(DEF_DEPS)
457468b82e59d01eba00dd9d0817309c8f5e414ejim
457468b82e59d01eba00dd9d0817309c8f5e414ejimall: $(ALL_DEPS)
457468b82e59d01eba00dd9d0817309c8f5e414ejim
04983e3bd1754764eec7d6bb772fe3b0bf391771jortonclean: $(CLEAN_DEPS)
04983e3bd1754764eec7d6bb772fe3b0bf391771jorton
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluemclobber: $(CLOBBER_DEPS)
15660979a30d251681463de2e0584853890082accovener
15660979a30d251681463de2e0584853890082accovenerlint: $(LINT_DEPS)
49dacedb6c387b786b7911082ff35121a45f414bcovener
49dacedb6c387b786b7911082ff35121a45f414bcovenermodlintlib: $(MODLINTLIB_DEPS)
cfd9415521847b2f9394fad04fb701cfb955f503rjung
cfd9415521847b2f9394fad04fb701cfb955f503rjungclean.lint: $(CLEAN_LINT_DEPS)
cfd9415521847b2f9394fad04fb701cfb955f503rjung
28c31fb73c1264bd1d0ff932573677030b024c7dwroweinstall: $(INSTALL_DEPS)
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe#
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe# Include common targets.
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe#
8491e0600f69b0405e156ea8a419653c065c645bcovenerinclude $(UTSBASE)/sun4u/Makefile.targ
63b9f1f5880391261705f696d7d65507bbe9ace3covener