xref: /titanic_54/usr/src/uts/sparc/Makefile.sparc (revision 2063d9c01c4a721994a3cb528444d7f328135869)
1*2063d9c0SJosef 'Jeff' Sipek#
27c478bd9Sstevel@tonic-gate# CDDL HEADER START
37c478bd9Sstevel@tonic-gate#
47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
54ab75253Smrj# Common Development and Distribution License (the "License").
64ab75253Smrj# You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate#
87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate# and limitations under the License.
127c478bd9Sstevel@tonic-gate#
137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate#
197c478bd9Sstevel@tonic-gate# CDDL HEADER END
207c478bd9Sstevel@tonic-gate#
214ab75253Smrj
22*2063d9c0SJosef 'Jeff' Sipek# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
23*2063d9c0SJosef 'Jeff' Sipek# Copyright (c) 2013 Andrew Stormont.  All rights reserved.
24*2063d9c0SJosef 'Jeff' Sipek
25*2063d9c0SJosef 'Jeff' Sipek
267c478bd9Sstevel@tonic-gate#
27*2063d9c0SJosef 'Jeff' Sipek#	This makefile contains the common definitions for all sparc
28*2063d9c0SJosef 'Jeff' Sipek#	implementation architecture independent modules.
297c478bd9Sstevel@tonic-gate#
307c478bd9Sstevel@tonic-gate
31*2063d9c0SJosef 'Jeff' Sipek#
32*2063d9c0SJosef 'Jeff' Sipek#	Define supported builds
33*2063d9c0SJosef 'Jeff' Sipek#
34*2063d9c0SJosef 'Jeff' SipekDEF_BUILDS	= $(DEF_BUILDS64)
35*2063d9c0SJosef 'Jeff' SipekALL_BUILDS	= $(ALL_BUILDS64)
367c478bd9Sstevel@tonic-gate
37*2063d9c0SJosef 'Jeff' Sipek#
38*2063d9c0SJosef 'Jeff' Sipek#	Everybody needs to know how to build modstubs.o and to locate unix.o.
39*2063d9c0SJosef 'Jeff' Sipek#	Note that unix.o must currently be selected from among the possible
40*2063d9c0SJosef 'Jeff' Sipek#	"implementation architectures". Note further, that unix.o is only
41*2063d9c0SJosef 'Jeff' Sipek#	used as an optional error check for undefines so (theoretically)
42*2063d9c0SJosef 'Jeff' Sipek#	any "implementation architectures" could be used. We choose sun4u
43*2063d9c0SJosef 'Jeff' Sipek#	because it is the reference port.
44*2063d9c0SJosef 'Jeff' Sipek#
45*2063d9c0SJosef 'Jeff' SipekUNIX_DIR	 = $(UTSBASE)/sun4u/unix
46*2063d9c0SJosef 'Jeff' SipekGENLIB_DIR	 = $(UTSBASE)/sun4u/genunix
47*2063d9c0SJosef 'Jeff' SipekIPDRV_DIR	 = $(UTSBASE)/sparc/ip
48*2063d9c0SJosef 'Jeff' SipekMODSTUBS_DIR	 = $(UNIX_DIR)
49*2063d9c0SJosef 'Jeff' SipekDSF_DIR		 = $(UNIX_DIR)
50*2063d9c0SJosef 'Jeff' SipekLINTS_DIR	 = $(OBJS_DIR)
51*2063d9c0SJosef 'Jeff' SipekLINT_LIB_DIR	 = $(UTSBASE)/sparc/lint-libs/$(OBJS_DIR)
52*2063d9c0SJosef 'Jeff' Sipek
53*2063d9c0SJosef 'Jeff' SipekUNIX_O		 = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
54*2063d9c0SJosef 'Jeff' SipekMODSTUBS_O	 = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
55*2063d9c0SJosef 'Jeff' SipekGENLIB		 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/libgenunix.so
56*2063d9c0SJosef 'Jeff' Sipek
57*2063d9c0SJosef 'Jeff' SipekLINT_LIB_32	 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln
58*2063d9c0SJosef 'Jeff' SipekGEN_LINT_LIB_32	 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
59*2063d9c0SJosef 'Jeff' Sipek
60*2063d9c0SJosef 'Jeff' SipekLINT_LIB_64	 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln
61*2063d9c0SJosef 'Jeff' SipekGEN_LINT_LIB_64	 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
62*2063d9c0SJosef 'Jeff' Sipek
63*2063d9c0SJosef 'Jeff' SipekLINT_LIB	 = $(LINT_LIB_$(CLASS))
64*2063d9c0SJosef 'Jeff' SipekGEN_LINT_LIB	 = $(GEN_LINT_LIB_$(CLASS))
65*2063d9c0SJosef 'Jeff' Sipek
66*2063d9c0SJosef 'Jeff' SipekLINT32_DIRS	 = $(LINT32_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%)
67*2063d9c0SJosef 'Jeff' SipekLINT32_FILES	 = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln)
68*2063d9c0SJosef 'Jeff' Sipek
69*2063d9c0SJosef 'Jeff' SipekLINT64_DIRS	 = $(LINT64_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%)
70*2063d9c0SJosef 'Jeff' SipekLINT64_FILES	 = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln)
71*2063d9c0SJosef 'Jeff' Sipek
72*2063d9c0SJosef 'Jeff' Sipek#
73*2063d9c0SJosef 'Jeff' Sipek#	Include the makefiles which define build rule templates, the
74*2063d9c0SJosef 'Jeff' Sipek#	collection of files per module, and a few specific flags. Note
75*2063d9c0SJosef 'Jeff' Sipek#	that order is significant, just as with an include path. The
76*2063d9c0SJosef 'Jeff' Sipek#	first build rule template which matches the files name will be
77*2063d9c0SJosef 'Jeff' Sipek#	used. By including these in order from most machine dependent
78*2063d9c0SJosef 'Jeff' Sipek#	to most machine independent, we allow a machine dependent file
79*2063d9c0SJosef 'Jeff' Sipek#	to be used in preference over a machine independent version
80*2063d9c0SJosef 'Jeff' Sipek#	(Such as a machine specific optimization, which preserves the
81*2063d9c0SJosef 'Jeff' Sipek#	interfaces.)
82*2063d9c0SJosef 'Jeff' Sipek#
83*2063d9c0SJosef 'Jeff' Sipekinclude $(UTSBASE)/sparc/Makefile.files
84*2063d9c0SJosef 'Jeff' Sipekinclude $(UTSBASE)/sparc/v9/Makefile.files
85*2063d9c0SJosef 'Jeff' Sipekinclude $(UTSBASE)/sun/Makefile.files
86*2063d9c0SJosef 'Jeff' Sipekinclude $(UTSBASE)/common/Makefile.files
87*2063d9c0SJosef 'Jeff' Sipek
88*2063d9c0SJosef 'Jeff' Sipek#
89*2063d9c0SJosef 'Jeff' Sipek# ----- TRANSITIONAL SECTION --------------------------------------------------
90*2063d9c0SJosef 'Jeff' Sipek#
91*2063d9c0SJosef 'Jeff' Sipek
92*2063d9c0SJosef 'Jeff' Sipek#
93*2063d9c0SJosef 'Jeff' Sipek#	Not everything which *should* be a module is a module yet. The
94*2063d9c0SJosef 'Jeff' Sipek#	following is a list of such objects which are currently part of
95*2063d9c0SJosef 'Jeff' Sipek#	genunix but which might someday become kmods.   This must be
96*2063d9c0SJosef 'Jeff' Sipek#	defined before we include Makefile.uts, or else genunix's build
97*2063d9c0SJosef 'Jeff' Sipek#	won't be as parallel as we might like.
98*2063d9c0SJosef 'Jeff' Sipek#
99*2063d9c0SJosef 'Jeff' SipekNOT_YET_KMODS	 = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS)
100*2063d9c0SJosef 'Jeff' Sipek
101*2063d9c0SJosef 'Jeff' Sipek#
102*2063d9c0SJosef 'Jeff' Sipek# ----- END OF TRANSITIONAL SECTION -------------------------------------------
103*2063d9c0SJosef 'Jeff' Sipek#
104*2063d9c0SJosef 'Jeff' Sipek#	Include machine independent rules. Note that this does not imply
105*2063d9c0SJosef 'Jeff' Sipek#	that the resulting module from rules in Makefile.uts is	machine
106*2063d9c0SJosef 'Jeff' Sipek#	independent. Only that the build rules are machine independent.
107*2063d9c0SJosef 'Jeff' Sipek#
108*2063d9c0SJosef 'Jeff' Sipekinclude $(UTSBASE)/Makefile.uts
109*2063d9c0SJosef 'Jeff' Sipek
110*2063d9c0SJosef 'Jeff' Sipek#
111*2063d9c0SJosef 'Jeff' Sipek#	machine specific optimization, override default in Makefile.master
112*2063d9c0SJosef 'Jeff' Sipek#
113*2063d9c0SJosef 'Jeff' SipekXARCH_32	= -xarch=v8
114*2063d9c0SJosef 'Jeff' SipekXARCH_64	= -m64
115*2063d9c0SJosef 'Jeff' SipekXARCH		= $(XARCH_$(CLASS))
116*2063d9c0SJosef 'Jeff' Sipek
117*2063d9c0SJosef 'Jeff' SipekCOPTIMIZE_32	= -xO3
118*2063d9c0SJosef 'Jeff' SipekCOPTIMIZE_64	= -xO3
119*2063d9c0SJosef 'Jeff' SipekCOPTIMIZE	= $(COPTIMIZE_$(CLASS))
120*2063d9c0SJosef 'Jeff' Sipek
121*2063d9c0SJosef 'Jeff' SipekCCMODE		= -Xa
122*2063d9c0SJosef 'Jeff' Sipek
123*2063d9c0SJosef 'Jeff' SipekCFLAGS_32	= -xcg92
124*2063d9c0SJosef 'Jeff' SipekCFLAGS_64	= -xchip=ultra $(CCABS32) $(CCREGSYM)
125*2063d9c0SJosef 'Jeff' SipekCFLAGS		= $(CFLAGS_$(CLASS))
126*2063d9c0SJosef 'Jeff' Sipek
127*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(XARCH)
128*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(COPTIMIZE)
129*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(EXTRA_CFLAGS)
130*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(XAOPT)
131*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(INLINES) -D_ASM_INLINES
132*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CCMODE)
133*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(SPACEFLAG)
134*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CERRWARN)
135*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CTF_FLAGS_$(CLASS))
136*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(C99MODE)
137*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CCUNBOUND)
138*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CCSTATICSYM)
139*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CC32BITCALLERS)
140*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CCNOAUTOINLINE)
141*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(IROPTFLAG)
142*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CGLOBALSTATIC)
143*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= -xregs=no%float
144*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= -xstrconst
145*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CSOURCEDEBUGFLAGS)
146*2063d9c0SJosef 'Jeff' SipekCFLAGS		+= $(CUSERFLAGS)
147*2063d9c0SJosef 'Jeff' Sipek
148*2063d9c0SJosef 'Jeff' SipekASFLAGS		+= $(XARCH)
149*2063d9c0SJosef 'Jeff' Sipek
150*2063d9c0SJosef 'Jeff' SipekLINT_DEFS_32	=
151*2063d9c0SJosef 'Jeff' SipekLINT_DEFS_64	= -m64
152*2063d9c0SJosef 'Jeff' SipekLINT_DEFS	+= $(LINT_DEFS_$(CLASS))
153*2063d9c0SJosef 'Jeff' Sipek
154*2063d9c0SJosef 'Jeff' Sipek#
155*2063d9c0SJosef 'Jeff' Sipek#	The following must be defined for all implementations:
156*2063d9c0SJosef 'Jeff' Sipek#
157*2063d9c0SJosef 'Jeff' Sipek#	MODSTUBS:	Module stubs source file.
158*2063d9c0SJosef 'Jeff' Sipek#
159*2063d9c0SJosef 'Jeff' SipekMODSTUBS	 = $(UTSBASE)/sparc/ml/modstubs.s
160*2063d9c0SJosef 'Jeff' Sipek
161*2063d9c0SJosef 'Jeff' Sipek#
162*2063d9c0SJosef 'Jeff' Sipek#	Define the actual specific platforms - obviously none.
163*2063d9c0SJosef 'Jeff' Sipek#
164*2063d9c0SJosef 'Jeff' SipekMACHINE_DEFS	 =
165*2063d9c0SJosef 'Jeff' Sipek
166*2063d9c0SJosef 'Jeff' Sipek#
167*2063d9c0SJosef 'Jeff' Sipek#	Debugging level
168*2063d9c0SJosef 'Jeff' Sipek#
169*2063d9c0SJosef 'Jeff' Sipek#	Special knowledge of which special debugging options effect which
170*2063d9c0SJosef 'Jeff' Sipek#	file is used to optimize the build if these flags are changed.
171*2063d9c0SJosef 'Jeff' Sipek#
172*2063d9c0SJosef 'Jeff' Sipek#	XXX: The above could possibly be done for more flags and files, but
173*2063d9c0SJosef 'Jeff' Sipek#	     is left as an experiment to the interested reader. Be forewarned,
174*2063d9c0SJosef 'Jeff' Sipek#	     that excessive use could lead to maintenance difficulties.
175*2063d9c0SJosef 'Jeff' Sipek#
176*2063d9c0SJosef 'Jeff' SipekDEBUG_DEFS_OBJ32	=
177*2063d9c0SJosef 'Jeff' SipekDEBUG_DEFS_DBG32	= -DDEBUG
178*2063d9c0SJosef 'Jeff' SipekDEBUG_DEFS_OBJ64	=
179*2063d9c0SJosef 'Jeff' SipekDEBUG_DEFS_DBG64	= -DDEBUG
180*2063d9c0SJosef 'Jeff' SipekDEBUG_DEFS		= $(DEBUG_DEFS_$(BUILD_TYPE))
181*2063d9c0SJosef 'Jeff' Sipek
182*2063d9c0SJosef 'Jeff' SipekDEBUG_COND_OBJ32	= $(POUND_SIGN)
183*2063d9c0SJosef 'Jeff' SipekDEBUG_COND_DBG32	=
184*2063d9c0SJosef 'Jeff' SipekDEBUG_COND_OBJ64	= $(POUND_SIGN)
185*2063d9c0SJosef 'Jeff' SipekDEBUG_COND_DBG64	=
186*2063d9c0SJosef 'Jeff' SipekIF_DEBUG_OBJ		= $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
187*2063d9c0SJosef 'Jeff' Sipek
188*2063d9c0SJosef 'Jeff' Sipek$(IF_DEBUG_OBJ)syscall.o	:=	DEBUG_DEFS	+= -DSYSCALLTRACE
189*2063d9c0SJosef 'Jeff' Sipek$(IF_DEBUG_OBJ)clock.o		:=	DEBUG_DEFS	+= -DKSLICE=1
190*2063d9c0SJosef 'Jeff' Sipek
191*2063d9c0SJosef 'Jeff' Sipek# Comment these out if you don't want dispatcher lock statistics.
192*2063d9c0SJosef 'Jeff' Sipek
193*2063d9c0SJosef 'Jeff' Sipek# $(IF_DEBUG_OBJ)disp_lock.o	:= DEBUG_DEFS	+= -DDISP_LOCK_STATS
194*2063d9c0SJosef 'Jeff' Sipek
195*2063d9c0SJosef 'Jeff' Sipek#
196*2063d9c0SJosef 'Jeff' Sipek#	Collect the preprocessor definitions to be associated with *all*
197*2063d9c0SJosef 'Jeff' Sipek#	files.
198*2063d9c0SJosef 'Jeff' Sipek#
199*2063d9c0SJosef 'Jeff' SipekALL_DEFS	 = $(MACHINE_DEFS) $(DEBUG_DEFS) $(OPTION_DEFS)
200*2063d9c0SJosef 'Jeff' Sipek#
201*2063d9c0SJosef 'Jeff' Sipek#
202*2063d9c0SJosef 'Jeff' Sipek#	The kernels modules which are "implementation architecture"
203*2063d9c0SJosef 'Jeff' Sipek#	specific for this machine are enumerated below. Note that most
204*2063d9c0SJosef 'Jeff' Sipek#	of these modules must exist (in one form or another) for each
205*2063d9c0SJosef 'Jeff' Sipek#	architecture.
206*2063d9c0SJosef 'Jeff' Sipek#
207*2063d9c0SJosef 'Jeff' Sipek#	Common Drivers (usually pseudo drivers) (/kernel/drv):
208*2063d9c0SJosef 'Jeff' Sipek#
209*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= aggr arp audio bl blkdev bofi clone cn conskbd consms cpuid
210*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= crypto cryptoadm devinfo dump
211*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= dtrace fasttrap fbt lockstat profile sdt systrace dcpc
212*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fssnap icmp icmp6 ip ip6 ipnet ipsecah
213*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ipsecesp iptun iwscn keysock kmdb kstat ksyms llc1
214*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= lofi
215*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= log logindmux kssl mm nca physmem pm poll pool
216*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= pseudo ptc ptm pts ptsl ramdisk random rsm rts sad
217*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= simnet softmac sppp sppptun sy sysevent sysmsg
218*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= spdsock
219*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= tcp tcp6 tl tnf ttymux udp udp6 wc winlock zcons
220*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ippctl
221*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= dld
222*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ipf
223*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= rpcib
224*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= dlpistub
225*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= vnic
226*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= xge
227*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= rds
228*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= rdsv3
229*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= chxge
230*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= smbsrv
231*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= vscan
232*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= nsmb
233*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fm
234*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= nulldriver
235*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= bridge trill
236*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= bpf
237*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= dca
238*2063d9c0SJosef 'Jeff' Sipek
239*2063d9c0SJosef 'Jeff' Sipek#
240*2063d9c0SJosef 'Jeff' Sipek#       Hardware Drivers in common space
241*2063d9c0SJosef 'Jeff' Sipek#
242*2063d9c0SJosef 'Jeff' Sipek
243*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= afe
244*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= audio1575
245*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= audioens
246*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= audiols
247*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= audiop16x
248*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= audiopci
249*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= audiots
250*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= e1000g
251*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= efe
252*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= hxge
253*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= mxfe
254*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= rge
255*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= rtls
256*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= sfe
257*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= aac
258*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= igb
259*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ixgbe
260*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= vr
261*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= mr_sas
262*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= yge
263*2063d9c0SJosef 'Jeff' Sipek
264*2063d9c0SJosef 'Jeff' Sipek#
265*2063d9c0SJosef 'Jeff' Sipek#	Machine Specific Driver Modules (/kernel/drv):
266*2063d9c0SJosef 'Jeff' Sipek#
267*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= audiocs
268*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= bge dmfe eri fas hme qfe
269*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= openeepr options sd ses st
270*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ssd
271*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ecpp
272*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= hid hubd ehci ohci uhci usb_mid usb_ia scsa2usb usbprn ugen
273*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= usbser usbsacm usbsksp usbsprl
274*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= usb_as usb_ac
275*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= usbskel
276*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= usbvc
277*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= usbftdi
278*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= wusb_df hwahc hwarc wusb_ca
279*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= usbecm
280*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= hci1394 av1394 scsa1394 dcam1394
281*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= sbp2
282*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs
283*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= sol_umad
284*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= pci_pci pcieb pcieb_bcm
285*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= i8042 kb8042 mouse8042
286*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fcode
287*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= mpt_sas
288*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= socal
289*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= sgen
290*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= myri10ge
291*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= smp
292*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= dad
293*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= scsi_vhci
294*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fcp
295*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fcip
296*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fcsm
297*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fp
298*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= qlc
299*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= qlge
300*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= stmf
301*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= stmf_sbd
302*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fct
303*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fcoe
304*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fcoet
305*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= fcoei
306*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= qlt
307*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= iscsit
308*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= pppt
309*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ncall nsctl sdbc nskern sv
310*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= ii rdc rdcsrv rdcstub
311*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= iscsi
312*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= emlxs
313*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= oce
314*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= srpt
315*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= pmcs
316*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= pmcs8001fw
317*2063d9c0SJosef 'Jeff' Sipek
318*2063d9c0SJosef 'Jeff' Sipek#
319*2063d9c0SJosef 'Jeff' Sipek#	I/O framework test drivers
320*2063d9c0SJosef 'Jeff' Sipek#
321*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= pshot
322*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= gen_drv
323*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= tvhci tphci tclient
324*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= emul64
325*2063d9c0SJosef 'Jeff' Sipek
326*2063d9c0SJosef 'Jeff' Sipek#
327*2063d9c0SJosef 'Jeff' Sipek# PCMCIA specific module(s)
328*2063d9c0SJosef 'Jeff' Sipek#
329*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= pcs
330*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= busra cardbus dada pcmcia
331*2063d9c0SJosef 'Jeff' SipekDRV_KMODS	+= pcic
332*2063d9c0SJosef 'Jeff' Sipek
333*2063d9c0SJosef 'Jeff' Sipek# Add lvm
334*2063d9c0SJosef 'Jeff' Sipek#
335*2063d9c0SJosef 'Jeff' SipekDRV_KMODS       += md
336*2063d9c0SJosef 'Jeff' SipekMISC_KMODS      += md_mirror md_stripe md_hotspares md_raid md_trans md_notify
337*2063d9c0SJosef 'Jeff' SipekMISC_KMODS      += md_sp
338*2063d9c0SJosef 'Jeff' Sipek
339*2063d9c0SJosef 'Jeff' Sipek#
340*2063d9c0SJosef 'Jeff' Sipek#	Exec Class Modules (/kernel/exec):
341*2063d9c0SJosef 'Jeff' Sipek#
342*2063d9c0SJosef 'Jeff' SipekEXEC_KMODS	+= aoutexec elfexec intpexec shbinexec javaexec
343*2063d9c0SJosef 'Jeff' Sipek
344*2063d9c0SJosef 'Jeff' Sipek#
345*2063d9c0SJosef 'Jeff' Sipek#	Scheduling Class Modules (/kernel/sched):
346*2063d9c0SJosef 'Jeff' Sipek#
347*2063d9c0SJosef 'Jeff' SipekSCHED_KMODS	+= RT TS RT_DPTBL TS_DPTBL IA FSS FX FX_DPTBL SDC
348*2063d9c0SJosef 'Jeff' Sipek
349*2063d9c0SJosef 'Jeff' Sipek#
350*2063d9c0SJosef 'Jeff' Sipek#	File System Modules (/kernel/fs):
351*2063d9c0SJosef 'Jeff' Sipek#
352*2063d9c0SJosef 'Jeff' SipekFS_KMODS	+= dev devfs fdfs fifofs hsfs lofs namefs nfs pcfs tmpfs zfs
353*2063d9c0SJosef 'Jeff' SipekFS_KMODS	+= zut specfs udfs ufs autofs cachefs procfs sockfs mntfs
354*2063d9c0SJosef 'Jeff' SipekFS_KMODS	+= ctfs objfs sharefs dcfs smbfs
355*2063d9c0SJosef 'Jeff' Sipek
356*2063d9c0SJosef 'Jeff' Sipek#
357*2063d9c0SJosef 'Jeff' Sipek#	Streams Modules (/kernel/strmod):
358*2063d9c0SJosef 'Jeff' Sipek#
359*2063d9c0SJosef 'Jeff' SipekSTRMOD_KMODS	+= bufmod connld dedump ldterm ms pckt pfmod
360*2063d9c0SJosef 'Jeff' SipekSTRMOD_KMODS	+= pipemod ptem redirmod rpcmod rlmod telmod timod
361*2063d9c0SJosef 'Jeff' SipekSTRMOD_KMODS	+= spppasyn spppcomp
362*2063d9c0SJosef 'Jeff' SipekSTRMOD_KMODS	+= tirdwr ttcompat
363*2063d9c0SJosef 'Jeff' SipekSTRMOD_KMODS	+= usbkbm usbms usbwcm usb_ah
364*2063d9c0SJosef 'Jeff' SipekSTRMOD_KMODS	+= drcompat
365*2063d9c0SJosef 'Jeff' SipekSTRMOD_KMODS	+= cryptmod
366*2063d9c0SJosef 'Jeff' SipekSTRMOD_KMODS	+= vuid3ps2
367*2063d9c0SJosef 'Jeff' Sipek
368*2063d9c0SJosef 'Jeff' Sipek#
369*2063d9c0SJosef 'Jeff' Sipek#	'System' Modules (/kernel/sys):
370*2063d9c0SJosef 'Jeff' Sipek#
371*2063d9c0SJosef 'Jeff' SipekSYS_KMODS	+= c2audit
372*2063d9c0SJosef 'Jeff' SipekSYS_KMODS	+= exacctsys
373*2063d9c0SJosef 'Jeff' SipekSYS_KMODS	+= inst_sync kaio msgsys semsys shmsys sysacct pipe
374*2063d9c0SJosef 'Jeff' SipekSYS_KMODS	+= doorfs pset acctctl portfs
375*2063d9c0SJosef 'Jeff' Sipek
376*2063d9c0SJosef 'Jeff' Sipek#
377*2063d9c0SJosef 'Jeff' Sipek#	'User' Modules (/kernel/misc):
378*2063d9c0SJosef 'Jeff' Sipek#
379*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= ac97
380*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= bignum
381*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= consconfig gld ipc nfs_dlboot nfssrv scsi
382*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= strplumb swapgeneric tlimod
383*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= rpcsec rpcsec_gss kgssapi kmech_dummy
384*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= kmech_krb5
385*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= fssnap_if
386*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= hidparser kbtrans usba usba10 usbs49_fw
387*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= s1394
388*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= hpcsvc pcihp
389*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= rsmops
390*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= kcf
391*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= ksocket
392*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= ibcm
393*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= ibdm
394*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= ibdma
395*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= ibmf
396*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= ibtl
397*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= sol_ofs
398*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= idm
399*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= idmap
400*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= hook
401*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= neti
402*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= ctf
403*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= mac dls
404*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= cmlb
405*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= tem
406*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= pcicfg fcodem fcpci
407*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= scsi_vhci_f_sym scsi_vhci_f_tpgs scsi_vhci_f_asym_sun
408*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= scsi_vhci_f_sym_hds
409*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= scsi_vhci_f_tape scsi_vhci_f_tpgs_tape
410*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= fctl
411*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= emlxs_fw
412*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= qlc_fw_2200
413*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= qlc_fw_2300
414*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= qlc_fw_2400
415*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= qlc_fw_2500
416*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= qlc_fw_6322
417*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= qlc_fw_8100
418*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= spuni
419*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= hwa1480_fw uwba
420*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= mii
421*2063d9c0SJosef 'Jeff' Sipek
422*2063d9c0SJosef 'Jeff' SipekMISC_KMODS	+= klmmod klmops
423*2063d9c0SJosef 'Jeff' Sipek
424*2063d9c0SJosef 'Jeff' Sipek#
425*2063d9c0SJosef 'Jeff' Sipek#	Software Cryptographic Providers (/kernel/crypto):
426*2063d9c0SJosef 'Jeff' Sipek#
427*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= aes
428*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= arcfour
429*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= blowfish
430*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= des
431*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= md4
432*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= md5
433*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= ecc
434*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= rsa
435*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= sha1
436*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= sha2
437*2063d9c0SJosef 'Jeff' SipekCRYPTO_KMODS	+= swrand
438*2063d9c0SJosef 'Jeff' Sipek
439*2063d9c0SJosef 'Jeff' Sipek#
440*2063d9c0SJosef 'Jeff' Sipek# IP Policy Modules (/kernel/ipp):
441*2063d9c0SJosef 'Jeff' Sipek#
442*2063d9c0SJosef 'Jeff' SipekIPP_KMODS	+= dlcosmk
443*2063d9c0SJosef 'Jeff' SipekIPP_KMODS	+= flowacct
444*2063d9c0SJosef 'Jeff' SipekIPP_KMODS	+= ipgpc
445*2063d9c0SJosef 'Jeff' SipekIPP_KMODS	+= dscpmk
446*2063d9c0SJosef 'Jeff' SipekIPP_KMODS	+= tokenmt
447*2063d9c0SJosef 'Jeff' SipekIPP_KMODS	+= tswtclmt
448*2063d9c0SJosef 'Jeff' Sipek
449*2063d9c0SJosef 'Jeff' Sipek#
450*2063d9c0SJosef 'Jeff' Sipek# 'Dacf' modules (/kernel/dacf)
451*2063d9c0SJosef 'Jeff' SipekDACF_KMODS	+= consconfig_dacf
452*2063d9c0SJosef 'Jeff' Sipek
453*2063d9c0SJosef 'Jeff' Sipek#
454*2063d9c0SJosef 'Jeff' Sipek#	SVVS Testing Modules (/kernel/strmod):
455*2063d9c0SJosef 'Jeff' Sipek#
456*2063d9c0SJosef 'Jeff' Sipek#	These are streams and driver modules which are not to be
457*2063d9c0SJosef 'Jeff' Sipek#	delivered with a released system. However, during development
458*2063d9c0SJosef 'Jeff' Sipek#	it is convenient to build and install the SVVS kernel modules.
459*2063d9c0SJosef 'Jeff' Sipek#
460*2063d9c0SJosef 'Jeff' SipekSVVS_KMODS	+= lmodb lmode lmodr lmodt svvslo tidg tivc tmux
461*2063d9c0SJosef 'Jeff' Sipek
462*2063d9c0SJosef 'Jeff' Sipek#
463*2063d9c0SJosef 'Jeff' Sipek#	Modules eXcluded from the product:
464*2063d9c0SJosef 'Jeff' Sipek#
465*2063d9c0SJosef 'Jeff' SipekXMODS		+=
466*2063d9c0SJosef 'Jeff' Sipek
467*2063d9c0SJosef 'Jeff' Sipek#
468*2063d9c0SJosef 'Jeff' Sipek#	'Dacf' Modules (/kernel/dacf):
469*2063d9c0SJosef 'Jeff' Sipek#
470*2063d9c0SJosef 'Jeff' SipekDACF_KMODS	+= net_dacf
471*2063d9c0SJosef 'Jeff' Sipek
472*2063d9c0SJosef 'Jeff' Sipek#
473*2063d9c0SJosef 'Jeff' Sipek#	MAC-Type Plugin Modules (/kernel/mac)
474*2063d9c0SJosef 'Jeff' Sipek#
475*2063d9c0SJosef 'Jeff' SipekMAC_KMODS	+= mac_6to4
476*2063d9c0SJosef 'Jeff' SipekMAC_KMODS	+= mac_ether
477*2063d9c0SJosef 'Jeff' SipekMAC_KMODS	+= mac_ipv4
478*2063d9c0SJosef 'Jeff' SipekMAC_KMODS	+= mac_ipv6
479*2063d9c0SJosef 'Jeff' SipekMAC_KMODS	+= mac_wifi
480*2063d9c0SJosef 'Jeff' SipekMAC_KMODS	+= mac_ib
481*2063d9c0SJosef 'Jeff' Sipek
482*2063d9c0SJosef 'Jeff' Sipek#
483*2063d9c0SJosef 'Jeff' Sipek# socketmod (kernel/socketmod)
484*2063d9c0SJosef 'Jeff' Sipek#
485*2063d9c0SJosef 'Jeff' SipekSOCKET_KMODS	+= sockpfp
486*2063d9c0SJosef 'Jeff' SipekSOCKET_KMODS	+= socksctp
487*2063d9c0SJosef 'Jeff' SipekSOCKET_KMODS	+= socksdp
488*2063d9c0SJosef 'Jeff' SipekSOCKET_KMODS	+= sockrds
489*2063d9c0SJosef 'Jeff' SipekSOCKET_KMODS	+= ksslf
490*2063d9c0SJosef 'Jeff' Sipek
491*2063d9c0SJosef 'Jeff' Sipek#
492*2063d9c0SJosef 'Jeff' Sipek#	kiconv modules (/kernel/kiconv):
493*2063d9c0SJosef 'Jeff' Sipek#
494*2063d9c0SJosef 'Jeff' SipekKICONV_KMODS	+= kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc
4958793b36bSNick Todd
4968793b36bSNick Todd#
4978793b36bSNick Todd# Ensure that the variable member of the cpu_t (cpu_m) is defined
4988793b36bSNick Todd# for the lint builds so as not to cause lint errors during the
4998793b36bSNick Todd# global cross check.
5008793b36bSNick Todd#
5010465c920SSteven Stallion$(LINTFLAGSUPPRESS)LINTFLAGS	+= -D_MACHDEP -I$(UTSBASE)/sun4 \
5020465c920SSteven Stallion				   -I$(UTSBASE)/sun4u -I$(UTSBASE)/sfmmu
503