xref: /illumos-gate/usr/src/uts/intel/pcieb/Makefile (revision d4bc0535efa2c2219e9f83246a5f371dc7f94273)
1*d4bc0535SKrishna Elango#
2*d4bc0535SKrishna Elango# CDDL HEADER START
3*d4bc0535SKrishna Elango#
4*d4bc0535SKrishna Elango# The contents of this file are subject to the terms of the
5*d4bc0535SKrishna Elango# Common Development and Distribution License (the "License").
6*d4bc0535SKrishna Elango# You may not use this file except in compliance with the License.
7*d4bc0535SKrishna Elango#
8*d4bc0535SKrishna Elango# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*d4bc0535SKrishna Elango# or http://www.opensolaris.org/os/licensing.
10*d4bc0535SKrishna Elango# See the License for the specific language governing permissions
11*d4bc0535SKrishna Elango# and limitations under the License.
12*d4bc0535SKrishna Elango#
13*d4bc0535SKrishna Elango# When distributing Covered Code, include this CDDL HEADER in each
14*d4bc0535SKrishna Elango# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*d4bc0535SKrishna Elango# If applicable, add the following below this CDDL HEADER, with the
16*d4bc0535SKrishna Elango# fields enclosed by brackets "[]" replaced with your own identifying
17*d4bc0535SKrishna Elango# information: Portions Copyright [yyyy] [name of copyright owner]
18*d4bc0535SKrishna Elango#
19*d4bc0535SKrishna Elango# CDDL HEADER END
20*d4bc0535SKrishna Elango#
21*d4bc0535SKrishna Elango#
22*d4bc0535SKrishna Elango# uts/intel/pcieb/Makefile
23*d4bc0535SKrishna Elango#
24*d4bc0535SKrishna Elango# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
25*d4bc0535SKrishna Elango# Use is subject to license terms.
26*d4bc0535SKrishna Elango#
27*d4bc0535SKrishna Elango#	This makefile drives the production of the pcieb driver kernel
28*d4bc0535SKrishna Elango#	module.
29*d4bc0535SKrishna Elango#
30*d4bc0535SKrishna Elango
31*d4bc0535SKrishna Elango#
32*d4bc0535SKrishna Elango#	Path to the base of the uts directory tree (usually /usr/src/uts).
33*d4bc0535SKrishna Elango#
34*d4bc0535SKrishna ElangoUTSBASE	= ../..
35*d4bc0535SKrishna Elango
36*d4bc0535SKrishna Elango#
37*d4bc0535SKrishna Elango#	Define the module and object file sets.
38*d4bc0535SKrishna Elango#
39*d4bc0535SKrishna ElangoMODULE		= pcieb
40*d4bc0535SKrishna ElangoOBJECTS		= $(PCIEB_OBJS:%=$(OBJS_DIR)/%)
41*d4bc0535SKrishna ElangoLINTS		= $(PCIEB_OBJS:%.o=$(LINTS_DIR)/%.ln)
42*d4bc0535SKrishna ElangoROOTMODULE	= $(ROOT_DRV_DIR)/$(MODULE)
43*d4bc0535SKrishna ElangoCONF_SRCDIR	= $(UTSBASE)/common/io/pciex
44*d4bc0535SKrishna Elango
45*d4bc0535SKrishna Elango#
46*d4bc0535SKrishna Elango#	Include common rules.
47*d4bc0535SKrishna Elango#
48*d4bc0535SKrishna Elangoinclude $(UTSBASE)/intel/Makefile.intel
49*d4bc0535SKrishna Elango
50*d4bc0535SKrishna Elango#
51*d4bc0535SKrishna Elango#	Define targets
52*d4bc0535SKrishna Elango#
53*d4bc0535SKrishna ElangoALL_TARGET	= $(BINARY) $(SRC_CONFILE)
54*d4bc0535SKrishna ElangoLINT_TARGET	= $(MODULE).lint
55*d4bc0535SKrishna ElangoINSTALL_TARGET	= $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
56*d4bc0535SKrishna Elango
57*d4bc0535SKrishna Elango#
58*d4bc0535SKrishna Elango# depends on misc/pcihp and misc/pcie
59*d4bc0535SKrishna Elango#
60*d4bc0535SKrishna Elango# For PCI Hotplug support, the misc/pcihp module provides devctl control
61*d4bc0535SKrishna Elango# device and cb_ops functions to support hotplug operations.
62*d4bc0535SKrishna Elango#
63*d4bc0535SKrishna Elango# pcie supplies PCI Express fabric error support
64*d4bc0535SKrishna Elango#
65*d4bc0535SKrishna ElangoLDFLAGS		+= -dy -Nmisc/pcihp -Nmisc/pcie
66*d4bc0535SKrishna Elango
67*d4bc0535SKrishna Elango#
68*d4bc0535SKrishna Elango#	Override defaults to build a unique, local modstubs.o.
69*d4bc0535SKrishna Elango#
70*d4bc0535SKrishna ElangoMODSTUBS_DIR	 = $(OBJS_DIR)
71*d4bc0535SKrishna ElangoCLEANFILES	+= $(MODSTUBS_O)
72*d4bc0535SKrishna Elango
73*d4bc0535SKrishna Elango#
74*d4bc0535SKrishna Elango# For now, disable these lint checks; maintainers should endeavor
75*d4bc0535SKrishna Elango# to investigate and remove these for maximum lint coverage.
76*d4bc0535SKrishna Elango# Please do not carry these forward to new Makefiles.
77*d4bc0535SKrishna Elango#
78*d4bc0535SKrishna ElangoLINTTAGS	+= -erroff=E_SUSPICIOUS_COMPARISON
79*d4bc0535SKrishna ElangoLINTTAGS	+= -erroff=E_BAD_PTR_CAST_ALIGN
80*d4bc0535SKrishna ElangoLINTTAGS	+= -erroff=E_PTRDIFF_OVERFLOW
81*d4bc0535SKrishna ElangoLINTTAGS	+= -erroff=E_ASSIGN_NARROW_CONV
82*d4bc0535SKrishna Elango
83*d4bc0535SKrishna Elango#
84*d4bc0535SKrishna Elango#	Default build targets.
85*d4bc0535SKrishna Elango#
86*d4bc0535SKrishna Elango.KEEP_STATE:
87*d4bc0535SKrishna Elango
88*d4bc0535SKrishna Elangodef:		$(DEF_DEPS)
89*d4bc0535SKrishna Elango
90*d4bc0535SKrishna Elangoall:		$(ALL_DEPS)
91*d4bc0535SKrishna Elango
92*d4bc0535SKrishna Elangoclean:		$(CLEAN_DEPS)
93*d4bc0535SKrishna Elango
94*d4bc0535SKrishna Elangoclobber:	$(CLOBBER_DEPS)
95*d4bc0535SKrishna Elango
96*d4bc0535SKrishna Elangolint:		$(LINT_DEPS)
97*d4bc0535SKrishna Elango
98*d4bc0535SKrishna Elangomodlintlib:	$(MODLINTLIB_DEPS)
99*d4bc0535SKrishna Elango
100*d4bc0535SKrishna Elangoclean.lint:	$(CLEAN_LINT_DEPS)
101*d4bc0535SKrishna Elango
102*d4bc0535SKrishna Elangoinstall:	$(INSTALL_DEPS)
103*d4bc0535SKrishna Elango
104*d4bc0535SKrishna Elango#
105*d4bc0535SKrishna Elango#	Include common targets.
106*d4bc0535SKrishna Elango#
107*d4bc0535SKrishna Elangoinclude $(UTSBASE)/intel/Makefile.targ
108*d4bc0535SKrishna Elango
109