Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
5cd4555ad444fd391002ae32450572054369fd42Rob Austein#
5cd4555ad444fd391002ae32450572054369fd42Rob Austein# CDDL HEADER START
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington# The contents of this file are subject to the terms of the
c1a883f2e04d94e99c433b1f6cfd0c0338f4ed85Mark Andrews# Common Development and Distribution License (the "License").
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# You may not use this file except in compliance with the License.
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington#
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington# or http://www.opensolaris.org/os/licensing.
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington# See the License for the specific language governing permissions
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington# and limitations under the License.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews#
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# When distributing Covered Code, include this CDDL HEADER in each
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# If applicable, add the following below this CDDL HEADER, with the
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews#
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington# CDDL HEADER END
f5d30e2864e048a42c4dc1134993ae7efdb5d6c3Mark Andrews#
561a29af8c54a216e7d30b5b4f6e0d21661654ecMark Andrews
b5ad6dfea4cc3e7d1d322ac99f1e5a31096837c4Mark Andrews#
c40265eba0c99708887d68e67901924065ba2514Brian Wellington# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
c40265eba0c99708887d68e67901924065ba2514Brian Wellington# Use is subject to license terms.
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian Wellington# This makefile drives the production of the Neterion Xframe
c40265eba0c99708887d68e67901924065ba2514Brian Wellington# 10G Ethernet (XGE) driver module in x86 systems
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian Wellington
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian Wellington# Paths to the base of the uts directory trees
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinUTSBASE = ../..
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
c1a883f2e04d94e99c433b1f6cfd0c0338f4ed85Mark Andrews# Define the module and object file sets.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinMODULE = ntxn
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinOBJECTS = $(NTXN_OBJS:%=$(OBJS_DIR)/%)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinLINTS = $(NTXN_OBJS:%.o=$(LINTS_DIR)/%.ln)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCONF_SRCDIR = $(UTSBASE)/common/io/ntxn
f5d30e2864e048a42c4dc1134993ae7efdb5d6c3Mark Andrews
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# Include common rules.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
c40265eba0c99708887d68e67901924065ba2514Brian Wellingtoninclude $(UTSBASE)/intel/Makefile.intel
c40265eba0c99708887d68e67901924065ba2514Brian Wellington
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian Wellington# Define targets
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonALL_TARGET = $(BINARY) $(SRC_CONFILE)
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonLINT_TARGET = $(MODULE).lint
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
a26ad011f382d12058478704cb5e90e6f4366d01Andreas Gustafsson
bca7f81db58d4803fb6d8d352132445cf61eb1acMark AndrewsINC_PATH += -I$(CONF_SRCDIR)
c40265eba0c99708887d68e67901924065ba2514Brian Wellington
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonCFLAGS += -DSOLARIS11 -xO4
92551304a9abff9284de5b79a48e83d781989339Mark AndrewsCFLAGS64 += -DSOLARIS11 -xO -I./
c40265eba0c99708887d68e67901924065ba2514Brian Wellington
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian Wellington# Driver depends on MAC & IP
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonLDFLAGS += -dy -N misc/mac -N drv/ip
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# Lint flag
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonLINTFLAGS += $(NTXN_DFLAGS) $(NTXN_KFLAGS)
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonLINTFLAGS += -DSOLARIS11
c40265eba0c99708887d68e67901924065ba2514Brian Wellington
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonCERRWARN += -_gcc=-Wno-parentheses
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonCERRWARN += -_gcc=-Wno-unused-label
c40265eba0c99708887d68e67901924065ba2514Brian WellingtonCERRWARN += -_gcc=-Wno-type-limits
c40265eba0c99708887d68e67901924065ba2514Brian Wellington
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
c40265eba0c99708887d68e67901924065ba2514Brian Wellington#
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# Default build targets.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
561a29af8c54a216e7d30b5b4f6e0d21661654ecMark Andrews.KEEP_STATE:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeindef: $(DEF_DEPS)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeinall: $(ALL_DEPS)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
c40265eba0c99708887d68e67901924065ba2514Brian Wellingtonclean: $(CLEAN_DEPS)
c40265eba0c99708887d68e67901924065ba2514Brian Wellington
a26ad011f382d12058478704cb5e90e6f4366d01Andreas Gustafssonclobber: $(CLOBBER_DEPS)
a26ad011f382d12058478704cb5e90e6f4366d01Andreas Gustafsson
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeinlint: $(LINT_DEPS)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeinmodlintlib: $(MODLINTLIB_DEPS)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeinclean.lint: $(CLEAN_LINT_DEPS)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
a26ad011f382d12058478704cb5e90e6f4366d01Andreas Gustafssoninstall: $(INSTALL_DEPS)
a26ad011f382d12058478704cb5e90e6f4366d01Andreas Gustafsson
92551304a9abff9284de5b79a48e83d781989339Mark Andrews#
92551304a9abff9284de5b79a48e83d781989339Mark Andrews# Include common targets.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeininclude $(UTSBASE)/intel/Makefile.targ
561a29af8c54a216e7d30b5b4f6e0d21661654ecMark Andrews