xref: /titanic_53/usr/src/uts/intel/Makefile.intel (revision 7c478bd95313f5f23a4c958a745db2134aa03244)
1*7c478bd9Sstevel@tonic-gate#
2*7c478bd9Sstevel@tonic-gate# CDDL HEADER START
3*7c478bd9Sstevel@tonic-gate#
4*7c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
5*7c478bd9Sstevel@tonic-gate# Common Development and Distribution License, Version 1.0 only
6*7c478bd9Sstevel@tonic-gate# (the "License").  You may not use this file except in compliance
7*7c478bd9Sstevel@tonic-gate# with the License.
8*7c478bd9Sstevel@tonic-gate#
9*7c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*7c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
11*7c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
12*7c478bd9Sstevel@tonic-gate# and limitations under the License.
13*7c478bd9Sstevel@tonic-gate#
14*7c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
15*7c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*7c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
17*7c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
18*7c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
19*7c478bd9Sstevel@tonic-gate#
20*7c478bd9Sstevel@tonic-gate# CDDL HEADER END
21*7c478bd9Sstevel@tonic-gate#
22*7c478bd9Sstevel@tonic-gate#
23*7c478bd9Sstevel@tonic-gate# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
24*7c478bd9Sstevel@tonic-gate# Use is subject to license terms.
25*7c478bd9Sstevel@tonic-gate#
26*7c478bd9Sstevel@tonic-gate# ident	"%Z%%M%	%I%	%E% SMI"
27*7c478bd9Sstevel@tonic-gate#
28*7c478bd9Sstevel@tonic-gate#
29*7c478bd9Sstevel@tonic-gate#	This makefile contains the common definitions for all intel
30*7c478bd9Sstevel@tonic-gate#	implementation architecture independent modules.
31*7c478bd9Sstevel@tonic-gate
32*7c478bd9Sstevel@tonic-gate#
33*7c478bd9Sstevel@tonic-gate#	Machine type (implementation architecture):
34*7c478bd9Sstevel@tonic-gate#
35*7c478bd9Sstevel@tonic-gatePLATFORM	 = i86pc
36*7c478bd9Sstevel@tonic-gate
37*7c478bd9Sstevel@tonic-gate#
38*7c478bd9Sstevel@tonic-gate#	Everybody needs to know how to build modstubs.o and to locate unix.o.
39*7c478bd9Sstevel@tonic-gate#	Note that unix.o must currently be selected from among the possible
40*7c478bd9Sstevel@tonic-gate#	"implementation architectures". Note further, that unix.o is only
41*7c478bd9Sstevel@tonic-gate#	used as an optional error check for undefines so (theoretically)
42*7c478bd9Sstevel@tonic-gate#	any "implementation architectures" could be used. We choose i86pc
43*7c478bd9Sstevel@tonic-gate#	because it is the reference port.
44*7c478bd9Sstevel@tonic-gate#
45*7c478bd9Sstevel@tonic-gateUNIX_DIR	 = $(UTSBASE)/i86pc/unix
46*7c478bd9Sstevel@tonic-gateGENLIB_DIR	 = $(UTSBASE)/intel/genunix
47*7c478bd9Sstevel@tonic-gateIPDRV_DIR	 = $(UTSBASE)/intel/ip
48*7c478bd9Sstevel@tonic-gateMODSTUBS_DIR	 = $(UNIX_DIR)
49*7c478bd9Sstevel@tonic-gateDSF_DIR		 = $(UTSBASE)/$(PLATFORM)/genassym
50*7c478bd9Sstevel@tonic-gateLINTS_DIR	 = $(OBJS_DIR)
51*7c478bd9Sstevel@tonic-gateLINT_LIB_DIR	 = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)
52*7c478bd9Sstevel@tonic-gate
53*7c478bd9Sstevel@tonic-gateUNIX_O		 = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
54*7c478bd9Sstevel@tonic-gateGENLIB		 = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
55*7c478bd9Sstevel@tonic-gateMODSTUBS_O	 = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
56*7c478bd9Sstevel@tonic-gateLINT_LIB	 = $(UTSBASE)/i86pc/lint-libs/$(OBJS_DIR)/llib-lunix.ln
57*7c478bd9Sstevel@tonic-gateGEN_LINT_LIB	 = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
58*7c478bd9Sstevel@tonic-gate
59*7c478bd9Sstevel@tonic-gate#
60*7c478bd9Sstevel@tonic-gate#	Include the makefiles which define build rule templates, the
61*7c478bd9Sstevel@tonic-gate#	collection of files per module, and a few specific flags. Note
62*7c478bd9Sstevel@tonic-gate#	that order is significant, just as with an include path. The
63*7c478bd9Sstevel@tonic-gate#	first build rule template which matches the files name will be
64*7c478bd9Sstevel@tonic-gate#	used. By including these in order from most machine dependent
65*7c478bd9Sstevel@tonic-gate#	to most machine independent, we allow a machine dependent file
66*7c478bd9Sstevel@tonic-gate#	to be used in preference over a machine independent version
67*7c478bd9Sstevel@tonic-gate#	(Such as a machine specific optimization, which preserves the
68*7c478bd9Sstevel@tonic-gate#	interfaces.)
69*7c478bd9Sstevel@tonic-gate#
70*7c478bd9Sstevel@tonic-gateinclude $(UTSBASE)/intel/Makefile.files
71*7c478bd9Sstevel@tonic-gateinclude $(UTSBASE)/common/Makefile.files
72*7c478bd9Sstevel@tonic-gate
73*7c478bd9Sstevel@tonic-gate#
74*7c478bd9Sstevel@tonic-gate#	Include machine independent rules. Note that this does not imply
75*7c478bd9Sstevel@tonic-gate#	that the resulting module from rules in Makefile.uts is	machine
76*7c478bd9Sstevel@tonic-gate#	independent. Only that the build rules are machine independent.
77*7c478bd9Sstevel@tonic-gate#
78*7c478bd9Sstevel@tonic-gateinclude $(UTSBASE)/Makefile.uts
79*7c478bd9Sstevel@tonic-gate
80*7c478bd9Sstevel@tonic-gate#
81*7c478bd9Sstevel@tonic-gate#	The following must be defined for all implementations:
82*7c478bd9Sstevel@tonic-gate#
83*7c478bd9Sstevel@tonic-gateMODSTUBS		= $(UTSBASE)/intel/ia32/ml/modstubs.s
84*7c478bd9Sstevel@tonic-gate
85*7c478bd9Sstevel@tonic-gate#
86*7c478bd9Sstevel@tonic-gate#	Define supported builds
87*7c478bd9Sstevel@tonic-gate#
88*7c478bd9Sstevel@tonic-gateDEF_BUILDS		= $(DEF_BUILDS64) $(DEF_BUILDS32)
89*7c478bd9Sstevel@tonic-gateALL_BUILDS		= $(ALL_BUILDS64) $(ALL_BUILDS32)
90*7c478bd9Sstevel@tonic-gate
91*7c478bd9Sstevel@tonic-gate#
92*7c478bd9Sstevel@tonic-gate#	x86 or amd64 inline templates
93*7c478bd9Sstevel@tonic-gate#
94*7c478bd9Sstevel@tonic-gateINLINES_32		= $(UTSBASE)/intel/ia32/ml/ia32.il
95*7c478bd9Sstevel@tonic-gateINLINES_64		= $(UTSBASE)/intel/amd64/ml/amd64.il
96*7c478bd9Sstevel@tonic-gateINLINES			+= $(INLINES_$(CLASS))
97*7c478bd9Sstevel@tonic-gate
98*7c478bd9Sstevel@tonic-gate#
99*7c478bd9Sstevel@tonic-gate#	kernel-specific optimizations; override default in Makefile.master
100*7c478bd9Sstevel@tonic-gate#
101*7c478bd9Sstevel@tonic-gate
102*7c478bd9Sstevel@tonic-gateCFLAGS_XARCH_32		= $(i386_CFLAGS)
103*7c478bd9Sstevel@tonic-gateCFLAGS_XARCH_64		= $(amd64_CFLAGS)
104*7c478bd9Sstevel@tonic-gateCFLAGS_XARCH		= $(CFLAGS_XARCH_$(CLASS))
105*7c478bd9Sstevel@tonic-gate
106*7c478bd9Sstevel@tonic-gateCOPTFLAG_32		= $(COPTFLAG)
107*7c478bd9Sstevel@tonic-gateCOPTFLAG_64		= $(COPTFLAG64)
108*7c478bd9Sstevel@tonic-gateCOPTIMIZE		= $(COPTFLAG_$(CLASS))
109*7c478bd9Sstevel@tonic-gate
110*7c478bd9Sstevel@tonic-gateCFLAGS			= $(CFLAGS_XARCH)
111*7c478bd9Sstevel@tonic-gateCFLAGS			+= $(COPTIMIZE)
112*7c478bd9Sstevel@tonic-gateCFLAGS			+= $(INLINES) -D_ASM_INLINES
113*7c478bd9Sstevel@tonic-gateCFLAGS			+= $(CCMODE)
114*7c478bd9Sstevel@tonic-gateCFLAGS			+= $(SPACEFLAG)
115*7c478bd9Sstevel@tonic-gateCFLAGS			+= $(CCUNBOUND)
116*7c478bd9Sstevel@tonic-gateCFLAGS			+= $(CFLAGS_uts)
117*7c478bd9Sstevel@tonic-gate
118*7c478bd9Sstevel@tonic-gateASFLAGS_XARCH_32	= $(i386_ASFLAGS)
119*7c478bd9Sstevel@tonic-gateASFLAGS_XARCH_64	= $(amd64_ASFLAGS)
120*7c478bd9Sstevel@tonic-gateASFLAGS_XARCH		= $(ASFLAGS_XARCH_$(CLASS))
121*7c478bd9Sstevel@tonic-gate
122*7c478bd9Sstevel@tonic-gateASFLAGS			+= $(ASFLAGS_XARCH)
123*7c478bd9Sstevel@tonic-gate
124*7c478bd9Sstevel@tonic-gate#
125*7c478bd9Sstevel@tonic-gate#	Define the base directory for installation.
126*7c478bd9Sstevel@tonic-gate#
127*7c478bd9Sstevel@tonic-gateBASE_INS_DIR	= $(ROOT)
128*7c478bd9Sstevel@tonic-gate
129*7c478bd9Sstevel@tonic-gate#
130*7c478bd9Sstevel@tonic-gate#
131*7c478bd9Sstevel@tonic-gate# Simulator flag
132*7c478bd9Sstevel@tonic-gate#
133*7c478bd9Sstevel@tonic-gatei386_SIMULATOR		= -D_SIMULATOR_SUPPORT
134*7c478bd9Sstevel@tonic-gateamd64_SIMULATOR		= -D_SIMULATOR_SUPPORT
135*7c478bd9Sstevel@tonic-gate
136*7c478bd9Sstevel@tonic-gateSIMULATOR		= $($(MACH)_SIMULATOR)
137*7c478bd9Sstevel@tonic-gate
138*7c478bd9Sstevel@tonic-gate
139*7c478bd9Sstevel@tonic-gate#
140*7c478bd9Sstevel@tonic-gate#	Debugging level
141*7c478bd9Sstevel@tonic-gate#
142*7c478bd9Sstevel@tonic-gate#	Special knowledge of which special debugging options affect which
143*7c478bd9Sstevel@tonic-gate#	file is used to optimize the build if these flags are changed.
144*7c478bd9Sstevel@tonic-gate#
145*7c478bd9Sstevel@tonic-gateDEBUG_DEFS_OBJ32	=
146*7c478bd9Sstevel@tonic-gateDEBUG_DEFS_DBG32	= -DDEBUG
147*7c478bd9Sstevel@tonic-gateDEBUG_DEFS_DBG32	+= $(SIMULATOR)
148*7c478bd9Sstevel@tonic-gateDEBUG_DEFS_OBJ64	=
149*7c478bd9Sstevel@tonic-gateDEBUG_DEFS_DBG64	= -DDEBUG
150*7c478bd9Sstevel@tonic-gateDEBUG_DEFS_DBG64	+= $(SIMULATOR)
151*7c478bd9Sstevel@tonic-gateDEBUG_DEFS		= $(DEBUG_DEFS_$(BUILD_TYPE))
152*7c478bd9Sstevel@tonic-gate
153*7c478bd9Sstevel@tonic-gateDEBUG_COND_OBJ32	:sh = echo \\043
154*7c478bd9Sstevel@tonic-gateDEBUG_COND_DBG32	=
155*7c478bd9Sstevel@tonic-gateDEBUG_COND_OBJ64	:sh = echo \\043
156*7c478bd9Sstevel@tonic-gateDEBUG_COND_DBG64	=
157*7c478bd9Sstevel@tonic-gateIF_DEBUG_OBJ		= $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
158*7c478bd9Sstevel@tonic-gate
159*7c478bd9Sstevel@tonic-gate$(IF_DEBUG_OBJ)syscall.o	:=	DEBUG_DEFS	+= -DSYSCALLTRACE
160*7c478bd9Sstevel@tonic-gate$(IF_DEBUG_OBJ)clock.o		:=	DEBUG_DEFS	+= -DKSLICE=1
161*7c478bd9Sstevel@tonic-gate
162*7c478bd9Sstevel@tonic-gate#
163*7c478bd9Sstevel@tonic-gate# This rather strange collection of definitions ensures that lint sees
164*7c478bd9Sstevel@tonic-gate# 'struct cpu' containing a fully declared embedded 'struct machcpu'
165*7c478bd9Sstevel@tonic-gate#
166*7c478bd9Sstevel@tonic-gate# There's something deeply dissatisfying about this.
167*7c478bd9Sstevel@tonic-gate#
168*7c478bd9Sstevel@tonic-gateLINTMACHFLAGS = -D_MACHDEP -I../../i86pc
169*7c478bd9Sstevel@tonic-gate$(LINTS_DIR)/kcpc.ln	:=	LINTFLAGS += $(LINTMACHFLAGS)
170*7c478bd9Sstevel@tonic-gate$(LINTS_DIR)/kdi.ln	:=	LINTFLAGS += $(LINTMACHFLAGS)
171*7c478bd9Sstevel@tonic-gate$(LINTS_DIR)/msacct.ln	:=	LINTFLAGS += $(LINTMACHFLAGS)
172*7c478bd9Sstevel@tonic-gate$(LINTS_DIR)/thread.ln	:=	LINTFLAGS += $(LINTMACHFLAGS)
173*7c478bd9Sstevel@tonic-gate
174*7c478bd9Sstevel@tonic-gate#
175*7c478bd9Sstevel@tonic-gate#	Build `options'. These are entirely historical and the need for these
176*7c478bd9Sstevel@tonic-gate#	is completely removed by the module technology.
177*7c478bd9Sstevel@tonic-gate#
178*7c478bd9Sstevel@tonic-gateOPTION_DEFS	 = -DC2_AUDIT
179*7c478bd9Sstevel@tonic-gate
180*7c478bd9Sstevel@tonic-gate#
181*7c478bd9Sstevel@tonic-gate#	Collect the preprocessor definitions to be associated with *all*
182*7c478bd9Sstevel@tonic-gate#	files.
183*7c478bd9Sstevel@tonic-gate#
184*7c478bd9Sstevel@tonic-gateALL_DEFS	 = $(DEBUG_DEFS) $(OPTION_DEFS)
185*7c478bd9Sstevel@tonic-gate
186*7c478bd9Sstevel@tonic-gate#
187*7c478bd9Sstevel@tonic-gate# ----- TRANSITIONAL SECTION --------------------------------------------------
188*7c478bd9Sstevel@tonic-gate#
189*7c478bd9Sstevel@tonic-gate
190*7c478bd9Sstevel@tonic-gate#
191*7c478bd9Sstevel@tonic-gate#	Not everything which *should* be a module is a module yet. The
192*7c478bd9Sstevel@tonic-gate#	following is a list of such objects which are currently part of
193*7c478bd9Sstevel@tonic-gate#	the base kernel but should soon become kmods.
194*7c478bd9Sstevel@tonic-gate#
195*7c478bd9Sstevel@tonic-gateNOT_YET_KMODS	 = $(OLDPTY_OBJS) $(PTY_OBJS) $(MOD_OBJS)
196*7c478bd9Sstevel@tonic-gate
197*7c478bd9Sstevel@tonic-gate#
198*7c478bd9Sstevel@tonic-gate# ----- END OF TRANSITIONAL SECTION -------------------------------------------
199*7c478bd9Sstevel@tonic-gate
200*7c478bd9Sstevel@tonic-gate#
201*7c478bd9Sstevel@tonic-gate#	The kernels modules which are "implementation architecture"
202*7c478bd9Sstevel@tonic-gate#	specific for this machine are enumerated below. Note that most
203*7c478bd9Sstevel@tonic-gate#	of these modules must exist (in one form or another) for each
204*7c478bd9Sstevel@tonic-gate#	architecture.
205*7c478bd9Sstevel@tonic-gate#
206*7c478bd9Sstevel@tonic-gate#	Common Drivers (usually pseudo drivers) (/kernel/drv)
207*7c478bd9Sstevel@tonic-gate#	DRV_KMODS are built both 32-bit and 64-bit
208*7c478bd9Sstevel@tonic-gate#	DRV_KMODS_32 are built only 32-bit
209*7c478bd9Sstevel@tonic-gate#	DRV_KMODS_64 are built only 64-bit
210*7c478bd9Sstevel@tonic-gate#
211*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= aac
212*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= aggr
213*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= amr
214*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= arp
215*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= asy
216*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= bl
217*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= bge
218*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= bofi
219*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= clone
220*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= cmdk
221*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= cn
222*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= conskbd
223*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= consms
224*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= cpuid
225*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= crypto
226*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= cryptoadm
227*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= devinfo
228*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= dld
229*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= dump
230*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ecpp
231*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= fssnap
232*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= i8042
233*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= icmp
234*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= icmp6
235*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ip
236*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ip6
237*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ipf
238*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ippctl
239*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ipsecah
240*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ipsecesp
241*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= iwscn
242*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= keysock
243*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= kstat
244*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ksyms
245*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= kmdb
246*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= llc1
247*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= llc2
248*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= lofi
249*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= log
250*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= logindmux
251*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= mm
252*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= mouse8042
253*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= mpt
254*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= nca
255*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= objmgr
256*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= openeepr
257*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pfil
258*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pm
259*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= poll
260*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pool
261*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pseudo
262*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ptc
263*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ptm
264*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pts
265*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ptsl
266*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ramdisk
267*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= random
268*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= rpcib
269*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= rsm
270*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= rts
271*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sad
272*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sctp
273*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sctp6
274*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sd
275*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sgen
276*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= spdsock
277*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sppp
278*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sppptun
279*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= st
280*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sy
281*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sysevent
282*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sysmsg
283*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= tcp
284*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= tcp6
285*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= tl
286*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= tnf
287*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= udp
288*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= udp6
289*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= vgatext
290*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= vni
291*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= vol
292*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= wc
293*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= winlock
294*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= xge
295*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= chxge
296*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= zcons
297*7c478bd9Sstevel@tonic-gate
298*7c478bd9Sstevel@tonic-gate#
299*7c478bd9Sstevel@tonic-gate# Common code drivers
300*7c478bd9Sstevel@tonic-gate#
301*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ixgb
302*7c478bd9Sstevel@tonic-gate
303*7c478bd9Sstevel@tonic-gate#
304*7c478bd9Sstevel@tonic-gate#	DTrace and DTrace Providers
305*7c478bd9Sstevel@tonic-gate#
306*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= dtrace
307*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= fbt
308*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= lockstat
309*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= profile
310*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= sdt
311*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= systrace
312*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= fasttrap
313*7c478bd9Sstevel@tonic-gate
314*7c478bd9Sstevel@tonic-gate#
315*7c478bd9Sstevel@tonic-gate#	I/O framework test drivers
316*7c478bd9Sstevel@tonic-gate#
317*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pshot
318*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= gen_drv
319*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= tvhci tphci tclient
320*7c478bd9Sstevel@tonic-gate
321*7c478bd9Sstevel@tonic-gate#
322*7c478bd9Sstevel@tonic-gate#	Machine Specific Driver Modules (/kernel/drv):
323*7c478bd9Sstevel@tonic-gate#
324*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pci_pci
325*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= options
326*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= scsi_vhci
327*7c478bd9Sstevel@tonic-gate
328*7c478bd9Sstevel@tonic-gate#
329*7c478bd9Sstevel@tonic-gate#	PCMCIA specific module(s)
330*7c478bd9Sstevel@tonic-gate#
331*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pem pcs
332*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= pcata pcelx pcmem pcram pcser
333*7c478bd9Sstevel@tonic-gate
334*7c478bd9Sstevel@tonic-gate#
335*7c478bd9Sstevel@tonic-gate#	I2O specific module(s)
336*7c478bd9Sstevel@tonic-gate#
337*7c478bd9Sstevel@tonic-gateDRV_KMODS_32	+= pci_to_i2o i2o_bs i2o_scsi
338*7c478bd9Sstevel@tonic-gate
339*7c478bd9Sstevel@tonic-gate#
340*7c478bd9Sstevel@tonic-gate#	SCSI Enclosure Services driver
341*7c478bd9Sstevel@tonic-gate#
342*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ses
343*7c478bd9Sstevel@tonic-gate
344*7c478bd9Sstevel@tonic-gate#
345*7c478bd9Sstevel@tonic-gate#	USB specific modules
346*7c478bd9Sstevel@tonic-gate#
347*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= hid
348*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= hubd
349*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= uhci
350*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ehci
351*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ohci
352*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= usb_mid
353*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= scsa2usb
354*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= usbprn
355*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ugen
356*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= usbser
357*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= usbser_edge
358*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= usb_ac
359*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= usb_as
360*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= usbskel
361*7c478bd9Sstevel@tonic-gate
362*7c478bd9Sstevel@tonic-gate#
363*7c478bd9Sstevel@tonic-gate#	1394 modules
364*7c478bd9Sstevel@tonic-gate#
365*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= s1394 sbp2
366*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= hci1394 scsa1394
367*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= av1394
368*7c478bd9Sstevel@tonic-gate
369*7c478bd9Sstevel@tonic-gate#
370*7c478bd9Sstevel@tonic-gate#	InfiniBand pseudo drivers
371*7c478bd9Sstevel@tonic-gate#
372*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= ib ibd
373*7c478bd9Sstevel@tonic-gate
374*7c478bd9Sstevel@tonic-gate#
375*7c478bd9Sstevel@tonic-gate#	LVM modules
376*7c478bd9Sstevel@tonic-gate#
377*7c478bd9Sstevel@tonic-gateDRV_KMODS	+= md
378*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= md_stripe md_hotspares md_mirror md_raid md_trans md_notify
379*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= md_sp
380*7c478bd9Sstevel@tonic-gate
381*7c478bd9Sstevel@tonic-gate#
382*7c478bd9Sstevel@tonic-gate#	Exec Class Modules (/kernel/exec):
383*7c478bd9Sstevel@tonic-gate#
384*7c478bd9Sstevel@tonic-gateEXEC_KMODS	+= elfexec intpexec javaexec
385*7c478bd9Sstevel@tonic-gate
386*7c478bd9Sstevel@tonic-gate#
387*7c478bd9Sstevel@tonic-gate#	Scheduling Class Modules (/kernel/sched):
388*7c478bd9Sstevel@tonic-gate#
389*7c478bd9Sstevel@tonic-gateSCHED_KMODS	+= IA RT TS RT_DPTBL TS_DPTBL FSS FX FX_DPTBL
390*7c478bd9Sstevel@tonic-gate
391*7c478bd9Sstevel@tonic-gate#
392*7c478bd9Sstevel@tonic-gate#	File System Modules (/kernel/fs):
393*7c478bd9Sstevel@tonic-gate#
394*7c478bd9Sstevel@tonic-gateFS_KMODS	+= autofs cachefs ctfs devfs fdfs fifofs hsfs lofs
395*7c478bd9Sstevel@tonic-gateFS_KMODS	+= mntfs namefs nfs objfs
396*7c478bd9Sstevel@tonic-gateFS_KMODS	+= pcfs procfs sockfs specfs tmpfs udfs ufs xmemfs
397*7c478bd9Sstevel@tonic-gate
398*7c478bd9Sstevel@tonic-gate#
399*7c478bd9Sstevel@tonic-gate#	Streams Modules (/kernel/strmod):
400*7c478bd9Sstevel@tonic-gate#
401*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= 6to4tun atun bufmod connld dedump ldterm pckt pfmod pipemod
402*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= ptem redirmod rpcmod rlmod telmod timod
403*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= spppasyn spppcomp
404*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= tirdwr ttcompat tun
405*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= usbkbm
406*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= usbms
407*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= usb_ah
408*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= drcompat
409*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= nattymod
410*7c478bd9Sstevel@tonic-gateSTRMOD_KMODS	+= cryptmod
411*7c478bd9Sstevel@tonic-gate
412*7c478bd9Sstevel@tonic-gate#
413*7c478bd9Sstevel@tonic-gate#	'System' Modules (/kernel/sys):
414*7c478bd9Sstevel@tonic-gate#
415*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= c2audit
416*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= doorfs
417*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= exacctsys
418*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= inst_sync
419*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= kaio
420*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= msgsys
421*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= pipe
422*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= portfs
423*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= pset
424*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= semsys
425*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= shmsys
426*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= sysacct
427*7c478bd9Sstevel@tonic-gateSYS_KMODS	+= acctctl
428*7c478bd9Sstevel@tonic-gate
429*7c478bd9Sstevel@tonic-gate#
430*7c478bd9Sstevel@tonic-gate#	'Misc' Modules (/kernel/misc)
431*7c478bd9Sstevel@tonic-gate#	MISC_KMODS are built both 32-bit and 64-bit
432*7c478bd9Sstevel@tonic-gate#	MISC_KMODS_32 are built only 32-bit
433*7c478bd9Sstevel@tonic-gate#	MISC_KMODS_64 are built only 64-bit
434*7c478bd9Sstevel@tonic-gate#
435*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= amsrc1 amsrc2
436*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= audiosup
437*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= busra
438*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= consconfig
439*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= ctf
440*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= dadk
441*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= diaudio
442*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= dls
443*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= fssnap_if
444*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= gda
445*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= ght
446*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= gld
447*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= hidparser
448*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= hpcsvc
449*7c478bd9Sstevel@tonic-gateMISC_KMODS_32	+= i2o_msg
450*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= ibcm
451*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= ibdm
452*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= ibmf
453*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= ibtl
454*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= ipc
455*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= kbtrans
456*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= kcf
457*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= kgssapi
458*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= klmmod klmops
459*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= kmech_dummy
460*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= kmech_krb5
461*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= krtld
462*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= mac
463*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= mixer
464*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= nfs_dlboot
465*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= nfssrv
466*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= pcicfg
467*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= pcihp
468*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= pcmcia
469*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= phx
470*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= rpcsec
471*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= rpcsec_gss
472*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= rsmops
473*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= scsi
474*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= snlb
475*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= strategy
476*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= strplumb
477*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= sysinit
478*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= terminal-emulator
479*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= tlimod
480*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= usba usba10
481*7c478bd9Sstevel@tonic-gateMISC_KMODS	+= zmod
482*7c478bd9Sstevel@tonic-gate
483*7c478bd9Sstevel@tonic-gate#
484*7c478bd9Sstevel@tonic-gate#	Software Cryptographic Providers (/kernel/crypto):
485*7c478bd9Sstevel@tonic-gate#
486*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= aes
487*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= arcfour
488*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= blowfish
489*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= des
490*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= md5
491*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= rsa
492*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= sha1
493*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= sha2
494*7c478bd9Sstevel@tonic-gateCRYPTO_KMODS	+= swrand
495*7c478bd9Sstevel@tonic-gate
496*7c478bd9Sstevel@tonic-gate#
497*7c478bd9Sstevel@tonic-gate#	IP Policy Modules (/kernel/ipp)
498*7c478bd9Sstevel@tonic-gate#
499*7c478bd9Sstevel@tonic-gateIPP_KMODS	+= dlcosmk
500*7c478bd9Sstevel@tonic-gateIPP_KMODS	+= flowacct
501*7c478bd9Sstevel@tonic-gateIPP_KMODS	+= ipgpc
502*7c478bd9Sstevel@tonic-gateIPP_KMODS	+= dscpmk
503*7c478bd9Sstevel@tonic-gateIPP_KMODS	+= tokenmt
504*7c478bd9Sstevel@tonic-gateIPP_KMODS	+= tswtclmt
505*7c478bd9Sstevel@tonic-gate
506*7c478bd9Sstevel@tonic-gate#
507*7c478bd9Sstevel@tonic-gate#	'Dacf' modules (/kernel/dacf)
508*7c478bd9Sstevel@tonic-gate#
509*7c478bd9Sstevel@tonic-gateDACF_KMODS	+= consconfig_dacf
510*7c478bd9Sstevel@tonic-gate
511*7c478bd9Sstevel@tonic-gate#
512*7c478bd9Sstevel@tonic-gate#	generic-unix module (/kernel/genunix):
513*7c478bd9Sstevel@tonic-gate#
514*7c478bd9Sstevel@tonic-gateGENUNIX_KMODS	+= genunix
515*7c478bd9Sstevel@tonic-gate
516*7c478bd9Sstevel@tonic-gate#
517*7c478bd9Sstevel@tonic-gate#	SVVS Testing Modules (/kernel/strmod):
518*7c478bd9Sstevel@tonic-gate#
519*7c478bd9Sstevel@tonic-gate#	These are streams and driver modules which are not to be
520*7c478bd9Sstevel@tonic-gate#	delivered with a released system. However, during development
521*7c478bd9Sstevel@tonic-gate#	it is convenient to build and install the SVVS kernel modules.
522*7c478bd9Sstevel@tonic-gate#
523*7c478bd9Sstevel@tonic-gateSVVS_KMODS	+= lmodb lmode lmodr lmodt lo tidg tivc tmux
524*7c478bd9Sstevel@tonic-gate
525*7c478bd9Sstevel@tonic-gateSVVS		+= svvs
526*7c478bd9Sstevel@tonic-gate
527*7c478bd9Sstevel@tonic-gate#
528*7c478bd9Sstevel@tonic-gate#	Modules eXcluded from the product:
529*7c478bd9Sstevel@tonic-gate#
530*7c478bd9Sstevel@tonic-gateXMODS		+= e1000g adpu320 nge
531*7c478bd9Sstevel@tonic-gateXMODS		+= tavor daplt
532*7c478bd9Sstevel@tonic-gate
533*7c478bd9Sstevel@tonic-gate
534*7c478bd9Sstevel@tonic-gate#
535*7c478bd9Sstevel@tonic-gate#	'Dacf' Modules (/kernel/dacf):
536*7c478bd9Sstevel@tonic-gate#
537*7c478bd9Sstevel@tonic-gateDACF_KMODS	+= usb_ac_dacf
538*7c478bd9Sstevel@tonic-gate
539*7c478bd9Sstevel@tonic-gate#
540*7c478bd9Sstevel@tonic-gate#	Performance Counter BackEnd modules (/usr/kernel/pcbe)
541*7c478bd9Sstevel@tonic-gate#
542*7c478bd9Sstevel@tonic-gatePCBE_KMODS	+= p123_pcbe p4_pcbe opteron_pcbe
543