xref: /illumos-gate/usr/src/uts/intel/Makefile.intel (revision a61ed2ce)
1# CDDL HEADER START
2#
3# The contents of this file are subject to the terms of the
4# Common Development and Distribution License (the "License").
5# You may not use this file except in compliance with the License.
6#
7# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
8# or http://www.opensolaris.org/os/licensing.
9# See the License for the specific language governing permissions
10# and limitations under the License.
11#
12# When distributing Covered Code, include this CDDL HEADER in each
13# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
14# If applicable, add the following below this CDDL HEADER, with the
15# fields enclosed by brackets "[]" replaced with your own identifying
16# information: Portions Copyright [yyyy] [name of copyright owner]
17#
18# CDDL HEADER END
19#
20
21#
22# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
23# Copyright (c) 2013 Andrew Stormont.  All rights reserved.
24# Copyright (c) 2014 by Delphix. All rights reserved.
25# Copyright 2019 Joyent, Inc.
26# Copyright 2016 Garrett D'Amore <garrett@damore.org>
27# Copyright 2018 Nexenta Systems, Inc.
28# Copyright 2019 RackTop Systems
29# Copyright 2019 Peter Tribble.
30#
31
32#
33#	This makefile contains the common definitions for all intel
34#	implementation architecture independent modules.
35#
36
37#
38#	Machine type (implementation architecture):
39#
40PLATFORM	 = i86pc
41
42#
43#	Everybody needs to know how to build modstubs.o and to locate unix.o.
44#	Note that unix.o must currently be selected from among the possible
45#	"implementation architectures". Note further, that unix.o is only
46#	used as an optional error check for undefines so (theoretically)
47#	any "implementation architectures" could be used. We choose i86pc
48#	because it is the reference port.
49#
50UNIX_DIR	 = $(UTSBASE)/i86pc/unix
51GENLIB_DIR	 = $(UTSBASE)/intel/genunix
52IPDRV_DIR	 = $(UTSBASE)/intel/ip
53MODSTUBS_DIR	 = $(UNIX_DIR)
54DSF_DIR		 = $(UTSBASE)/$(PLATFORM)/genassym
55LINTS_DIR	 = $(OBJS_DIR)
56LINT_LIB_DIR	 = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)
57
58UNIX_O		 = $(UNIX_DIR)/$(OBJS_DIR)/unix.o
59GENLIB		 = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so
60MODSTUBS_O	 = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o
61LINT_LIB	 = $(UTSBASE)/i86pc/lint-libs/$(OBJS_DIR)/llib-lunix.ln
62GEN_LINT_LIB	 = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
63
64#
65#	Include the makefiles which define build rule templates, the
66#	collection of files per module, and a few specific flags. Note
67#	that order is significant, just as with an include path. The
68#	first build rule template which matches the files name will be
69#	used. By including these in order from most machine dependent
70#	to most machine independent, we allow a machine dependent file
71#	to be used in preference over a machine independent version
72#	(Such as a machine specific optimization, which preserves the
73#	interfaces.)
74#
75include $(UTSBASE)/intel/Makefile.files
76include $(UTSBASE)/common/Makefile.files
77
78#
79# ----- TRANSITIONAL SECTION --------------------------------------------------
80#
81
82#
83#	Not everything which *should* be a module is a module yet. The
84#	following is a list of such objects which are currently part of
85#	genunix but which might someday become kmods.  This must be
86#	defined before we include Makefile.uts, or else genunix's build
87#	won't be as parallel as we might like.
88#
89NOT_YET_KMODS	 = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS)
90
91#
92# ----- END OF TRANSITIONAL SECTION -------------------------------------------
93#
94#	Include machine independent rules. Note that this does not imply
95#	that the resulting module from rules in Makefile.uts is	machine
96#	independent. Only that the build rules are machine independent.
97#
98include $(UTSBASE)/Makefile.uts
99
100#
101#	The following must be defined for all implementations:
102#
103MODSTUBS		= $(UTSBASE)/intel/ia32/ml/modstubs.s
104
105#
106#	Define supported builds
107#
108DEF_BUILDS		= $(DEF_BUILDS64)
109ALL_BUILDS		= $(ALL_BUILDS64)
110
111#
112#	x86 or amd64 inline templates
113#
114INLINES_32		= $(UTSBASE)/intel/ia32/ml/ia32.il
115INLINES_64		= $(UTSBASE)/intel/amd64/ml/amd64.il
116INLINES			+= $(INLINES_$(CLASS))
117
118#
119#	kernel-specific optimizations; override default in Makefile.master
120#
121
122CFLAGS_XARCH_32		= $(i386_CFLAGS)
123CFLAGS_XARCH_64		= $(amd64_CFLAGS)
124CFLAGS_XARCH		= $(CFLAGS_XARCH_$(CLASS))
125
126COPTFLAG_32		= $(COPTFLAG)
127COPTFLAG_64		= $(COPTFLAG64)
128COPTIMIZE		= $(COPTFLAG_$(CLASS))
129
130CFLAGS			= $(CFLAGS_XARCH)
131CFLAGS			+= $(COPTIMIZE)
132CFLAGS			+= $(INLINES) -D_ASM_INLINES
133CFLAGS			+= $(CCMODE)
134CFLAGS			+= $(SPACEFLAG)
135CFLAGS			+= $(CCUNBOUND)
136CFLAGS			+= $(CFLAGS_uts)
137CFLAGS			+= -xstrconst
138
139#
140# Options to control which version of stack-protector we enable. This
141# gives us a bit of flexibility and is unfortunately necessary as some
142# modules do not function correctly with our defaults (qede).
143#
144#  o STACKPROTECT_		Sets the appropriate version for the compiler
145#  o STACKPROTECT_strong	Sets us to use strong on all of the
146#				compilers it supports. This is the same
147#				as the default.
148#
149#  o STACKPROTECT_none		Disables the stack protector.
150#
151#  o STACKPROTECT_all		Enables it for everything.
152#
153#  o STACKPROTECT_basic		Enables the basic stack protector.
154#
155# -fstack-protector-strong is not available in our gcc4 which is why we
156# have per-compiler versions below.
157#
158STACKPROTECT_		= -_gcc4=-fstack-protector
159STACKPROTECT_		+= -_gcc7=-fstack-protector-strong
160STACKPROTECT_		+= -_gcc8=-fstack-protector-strong
161STACKPROTECT_		+= -_gcc9=-fstack-protector-strong
162
163STACKPROTECT_strong	= $(STACKPROTECT_)
164STACKPROTECT_none	= -_gcc=-fstack-protector-none
165STACKPROTECT_all	= -_gcc=-fstack-protector-all
166STACKPROTECT_basic	= -_gcc=-fstack-protector
167
168CFLAGS			+= $(STACKPROTECT_$(STACKPROTECT))
169
170ASFLAGS_XARCH_32	= $(i386_ASFLAGS)
171ASFLAGS_XARCH_64	= $(amd64_ASFLAGS)
172ASFLAGS_XARCH		= $(ASFLAGS_XARCH_$(CLASS))
173
174ASFLAGS			+= $(ASFLAGS_XARCH)
175
176#
177#	Define the base directory for installation.
178#
179BASE_INS_DIR	= $(ROOT)
180
181#
182#	Debugging level
183#
184#	Special knowledge of which special debugging options affect which
185#	file is used to optimize the build if these flags are changed.
186#
187DEBUG_DEFS_OBJ32	=
188DEBUG_DEFS_DBG32	= -DDEBUG
189DEBUG_DEFS_OBJ64	=
190DEBUG_DEFS_DBG64	= -DDEBUG
191DEBUG_DEFS		= $(DEBUG_DEFS_$(BUILD_TYPE))
192
193DEBUG_COND_OBJ32	= $(POUND_SIGN)
194DEBUG_COND_DBG32	=
195DEBUG_COND_OBJ64	= $(POUND_SIGN)
196DEBUG_COND_DBG64	=
197IF_DEBUG_OBJ		= $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/
198
199$(IF_DEBUG_OBJ)syscall.o	:=	DEBUG_DEFS	+= -DSYSCALLTRACE
200$(IF_DEBUG_OBJ)clock.o		:=	DEBUG_DEFS	+= -DKSLICE=1
201
202#
203#	Collect the preprocessor definitions to be associated with *all*
204#	files.
205#
206ALL_DEFS	 = $(DEBUG_DEFS) $(OPTION_DEFS)
207
208#
209#	TCP congestion control modules (/kernel/cc)
210#
211MISC_KMODS	+= cc
212CC_KMODS	+= cc_newreno cc_cubic cc_sunreno
213
214#
215#	The kernels modules which are "implementation architecture"
216#	specific for this machine are enumerated below. Note that most
217#	of these modules must exist (in one form or another) for each
218#	architecture.
219#
220#	Common Drivers (usually pseudo drivers) (/kernel/drv)
221#	DRV_KMODS are built both 32-bit and 64-bit
222#	DRV_KMODS_32 are built only 32-bit
223#	DRV_KMODS_64 are built only 64-bit
224#
225DRV_KMODS	+= aac
226DRV_KMODS	+= aggr
227DRV_KMODS	+= ahci
228DRV_KMODS	+= amr
229DRV_KMODS	+= srn
230DRV_KMODS       += arn
231DRV_KMODS	+= arp
232DRV_KMODS	+= asy
233DRV_KMODS	+= ata
234DRV_KMODS	+= ath
235DRV_KMODS	+= atu
236DRV_KMODS	+= audio
237DRV_KMODS	+= audio1575
238DRV_KMODS	+= audio810
239DRV_KMODS	+= audiocmi
240DRV_KMODS	+= audiocmihd
241DRV_KMODS	+= audioemu10k
242DRV_KMODS	+= audioens
243DRV_KMODS	+= audiohd
244DRV_KMODS	+= audioixp
245DRV_KMODS	+= audiols
246DRV_KMODS	+= audiop16x
247DRV_KMODS	+= audiopci
248DRV_KMODS	+= audiosolo
249DRV_KMODS	+= audiots
250DRV_KMODS	+= audiovia823x
251DRV_KMODS	+= bl
252DRV_KMODS	+= blkdev
253DRV_KMODS	+= bge
254DRV_KMODS	+= bofi
255DRV_KMODS	+= bpf
256DRV_KMODS	+= bridge
257DRV_KMODS	+= chxge
258DRV_KMODS	+= cxgbe
259DRV_KMODS	+= ntxn
260DRV_KMODS	+= myri10ge
261DRV_KMODS	+= clone
262DRV_KMODS	+= cmdk
263DRV_KMODS	+= cn
264DRV_KMODS	+= conskbd
265DRV_KMODS	+= consms
266DRV_KMODS	+= cpqary3
267DRV_KMODS	+= cpuid
268DRV_KMODS	+= cpunex
269DRV_KMODS	+= crypto
270DRV_KMODS	+= cryptoadm
271DRV_KMODS	+= dca
272DRV_KMODS	+= devinfo
273DRV_KMODS	+= dld
274DRV_KMODS	+= dlpistub
275DRV_KMODS	+= dnet
276DRV_KMODS	+= dump
277DRV_KMODS	+= ecpp
278DRV_KMODS	+= emlxs
279DRV_KMODS	+= eventfd
280DRV_KMODS	+= fd
281DRV_KMODS	+= fdc
282DRV_KMODS	+= fm
283DRV_KMODS	+= fssnap
284DRV_KMODS	+= hxge
285DRV_KMODS	+= i8042
286DRV_KMODS	+= icmp
287DRV_KMODS	+= icmp6
288DRV_KMODS	+= intel_nb5000
289DRV_KMODS	+= intel_nhm
290DRV_KMODS	+= ip
291DRV_KMODS	+= ip6
292DRV_KMODS	+= ipd
293DRV_KMODS	+= ipf
294DRV_KMODS       += ipnet
295DRV_KMODS	+= ippctl
296DRV_KMODS	+= ipsecah
297DRV_KMODS	+= ipsecesp
298DRV_KMODS	+= ipw
299DRV_KMODS	+= iwh
300DRV_KMODS	+= iwi
301DRV_KMODS	+= iwn
302DRV_KMODS	+= iwk
303DRV_KMODS	+= iwp
304DRV_KMODS	+= iwscn
305DRV_KMODS	+= kb8042
306DRV_KMODS	+= keysock
307DRV_KMODS	+= kssl
308DRV_KMODS	+= kstat
309DRV_KMODS	+= ksyms
310DRV_KMODS	+= kmdb
311DRV_KMODS	+= llc1
312DRV_KMODS	+= lofi
313DRV_KMODS	+= log
314DRV_KMODS	+= logindmux
315DRV_KMODS	+= mega_sas
316DRV_KMODS	+= mc-amd
317DRV_KMODS	+= mlxcx
318DRV_KMODS	+= mm
319DRV_KMODS	+= mouse8042
320DRV_KMODS	+= mpt_sas
321DRV_KMODS	+= mr_sas
322DRV_KMODS	+= mwl
323DRV_KMODS	+= nca
324DRV_KMODS	+= nsmb
325DRV_KMODS	+= nulldriver
326DRV_KMODS	+= nv_sata
327DRV_KMODS	+= nvme
328DRV_KMODS	+= nxge
329DRV_KMODS	+= oce
330DRV_KMODS	+= openeepr
331DRV_KMODS	+= pci_pci
332DRV_KMODS	+= pcic
333DRV_KMODS	+= pcieb
334DRV_KMODS	+= physmem
335DRV_KMODS	+= pit_beep
336DRV_KMODS	+= pm
337DRV_KMODS	+= poll
338DRV_KMODS	+= pool
339DRV_KMODS	+= power
340DRV_KMODS	+= pseudo
341DRV_KMODS	+= ptc
342DRV_KMODS	+= ptm
343DRV_KMODS	+= pts
344DRV_KMODS	+= ptsl
345DRV_KMODS	+= qlge
346DRV_KMODS	+= ral
347DRV_KMODS	+= ramdisk
348DRV_KMODS	+= random
349DRV_KMODS	+= rds
350DRV_KMODS	+= rdsv3
351DRV_KMODS	+= rpcib
352DRV_KMODS	+= rsm
353DRV_KMODS	+= rts
354DRV_KMODS	+= rtw
355DRV_KMODS	+= rum
356DRV_KMODS	+= rwd
357DRV_KMODS	+= rwn
358DRV_KMODS	+= sad
359DRV_KMODS	+= sd
360DRV_KMODS	+= sdhost
361DRV_KMODS	+= sgen
362DRV_KMODS	+= si3124
363DRV_KMODS	+= signalfd
364DRV_KMODS	+= smbios
365DRV_KMODS	+= skd
366DRV_KMODS	+= softmac
367DRV_KMODS	+= spdsock
368DRV_KMODS	+= smbsrv
369DRV_KMODS	+= smp
370DRV_KMODS	+= sppp
371DRV_KMODS	+= sppptun
372DRV_KMODS	+= srpt
373DRV_KMODS	+= st
374DRV_KMODS	+= sy
375DRV_KMODS	+= sysevent
376DRV_KMODS	+= sysmsg
377DRV_KMODS	+= tcp
378DRV_KMODS	+= tcp6
379DRV_KMODS	+= timerfd
380DRV_KMODS	+= tl
381DRV_KMODS	+= tnf
382DRV_KMODS	+= tpm
383DRV_KMODS	+= trill
384DRV_KMODS	+= udp
385DRV_KMODS	+= udp6
386DRV_KMODS	+= ucode
387DRV_KMODS	+= ufm
388DRV_KMODS	+= ufmtest
389DRV_KMODS	+= ural
390DRV_KMODS	+= uath
391DRV_KMODS	+= urtw
392DRV_KMODS	+= vgatext
393DRV_KMODS	+= vnic
394DRV_KMODS	+= vscan
395DRV_KMODS	+= wc
396DRV_KMODS	+= winlock
397DRV_KMODS	+= wpi
398DRV_KMODS	+= xge
399DRV_KMODS	+= yge
400DRV_KMODS	+= zcons
401DRV_KMODS	+= zyd
402DRV_KMODS	+= simnet
403DRV_KMODS	+= stmf
404DRV_KMODS	+= stmf_sbd
405DRV_KMODS	+= fct
406DRV_KMODS	+= fcoe
407DRV_KMODS	+= fcoet
408DRV_KMODS	+= fcoei
409DRV_KMODS	+= qlt
410DRV_KMODS	+= iscsit
411DRV_KMODS	+= pppt
412DRV_KMODS	+= iptun
413DRV_KMODS	+= vmxnet3s
414DRV_KMODS	+= pvscsi
415
416#
417# Common code drivers
418#
419
420DRV_KMODS	+= afe
421DRV_KMODS	+= atge
422DRV_KMODS	+= bfe
423DRV_KMODS	+= bnx
424DRV_KMODS	+= bnxe
425DRV_KMODS	+= dmfe
426DRV_KMODS	+= e1000g
427DRV_KMODS	+= efe
428DRV_KMODS	+= elxl
429DRV_KMODS	+= hme
430DRV_KMODS	+= mxfe
431DRV_KMODS	+= nge
432DRV_KMODS	+= pcn
433DRV_KMODS	+= qede
434DRV_KMODS	+= rge
435DRV_KMODS	+= rtls
436DRV_KMODS	+= sfe
437DRV_KMODS	+= sfxge
438DRV_KMODS	+= amd8111s
439DRV_KMODS	+= igb
440DRV_KMODS	+= ipmi
441DRV_KMODS	+= iprb
442DRV_KMODS	+= ixgbe
443DRV_KMODS	+= i40e
444DRV_KMODS	+= vr
445
446#
447# Virtio drivers
448#
449
450# Virtio core
451DRV_KMODS	+= virtio
452
453# Virtio block driver
454DRV_KMODS	+= vioblk
455
456# Virtio network driver
457DRV_KMODS	+= vioif
458
459#
460#	DTrace and DTrace Providers
461#
462DRV_KMODS	+= dtrace
463DRV_KMODS	+= fbt
464DRV_KMODS	+= lockstat
465DRV_KMODS	+= profile
466DRV_KMODS	+= sdt
467DRV_KMODS	+= systrace
468DRV_KMODS	+= fasttrap
469DRV_KMODS	+= dcpc
470
471#
472#	I/O framework test drivers
473#
474DRV_KMODS	+= pshot
475DRV_KMODS	+= gen_drv
476DRV_KMODS	+= tvhci tphci tclient
477DRV_KMODS	+= emul64
478
479#
480#	Machine Specific Driver Modules (/kernel/drv):
481#
482DRV_KMODS	+= options
483DRV_KMODS	+= scsi_vhci
484DRV_KMODS	+= pmcs
485DRV_KMODS	+= pmcs8001fw
486DRV_KMODS	+= arcmsr
487DRV_KMODS	+= fcp
488DRV_KMODS	+= fcip
489DRV_KMODS	+= fcsm
490DRV_KMODS	+= fp
491DRV_KMODS	+= qlc
492DRV_KMODS	+= iscsi
493
494#
495#	PCMCIA specific module(s)
496#
497DRV_KMODS	+= pcs
498MISC_KMODS	+= cardbus
499
500#
501#	SCSI Enclosure Services driver
502#
503DRV_KMODS	+= ses
504
505#
506#	USB specific modules
507#
508DRV_KMODS	+= ccid
509DRV_KMODS	+= hid
510DRV_KMODS	+= hubd
511DRV_KMODS	+= uhci
512DRV_KMODS	+= ehci
513DRV_KMODS	+= ohci
514DRV_KMODS	+= usb_mid
515DRV_KMODS	+= usb_ia
516DRV_KMODS	+= scsa2usb
517DRV_KMODS	+= usbprn
518DRV_KMODS	+= ugen
519DRV_KMODS	+= usbser
520DRV_KMODS	+= usbsacm
521DRV_KMODS	+= usbsksp
522DRV_KMODS	+= usbsprl
523DRV_KMODS	+= usb_ac
524DRV_KMODS	+= usb_as
525DRV_KMODS	+= usbskel
526DRV_KMODS	+= usbvc
527DRV_KMODS	+= usbftdi
528DRV_KMODS	+= usbecm
529DRV_KMODS	+= xhci
530
531#
532#	USBGEM modules
533#
534DRV_KMODS	+= usbgem
535DRV_KMODS	+= axf
536DRV_KMODS	+= udmf
537DRV_KMODS	+= upf
538DRV_KMODS	+= urf
539
540#
541#	1394 modules
542#
543MISC_KMODS	+= s1394 sbp2
544DRV_KMODS	+= hci1394 scsa1394
545DRV_KMODS	+= av1394
546DRV_KMODS	+= dcam1394
547
548#
549#	InfiniBand pseudo drivers
550#
551DRV_KMODS	+= ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs
552DRV_KMODS	+= sol_umad
553
554#
555#	Brand modules
556#
557BRAND_KMODS	+= sn1_brand s10_brand
558
559#
560#	Exec Class Modules (/kernel/exec):
561#
562EXEC_KMODS	+= elfexec intpexec shbinexec javaexec
563
564#
565#	Scheduling Class Modules (/kernel/sched):
566#
567SCHED_KMODS	+= IA RT TS RT_DPTBL TS_DPTBL FSS FX FX_DPTBL SDC
568
569#
570#	File System Modules (/kernel/fs):
571#
572FS_KMODS	+= autofs ctfs dcfs dev devfs fdfs fifofs hsfs lofs
573FS_KMODS	+= mntfs namefs nfs objfs zfs zut
574FS_KMODS	+= pcfs procfs sockfs specfs tmpfs udfs ufs sharefs
575FS_KMODS	+= smbfs bootfs
576
577#
578#	Streams Modules (/kernel/strmod):
579#
580STRMOD_KMODS	+= bufmod connld dedump ldterm pckt pfmod pipemod
581STRMOD_KMODS	+= ptem redirmod rpcmod rlmod telmod timod
582STRMOD_KMODS	+= spppasyn spppcomp
583STRMOD_KMODS	+= tirdwr ttcompat
584STRMOD_KMODS	+= usbkbm
585STRMOD_KMODS	+= usbms
586STRMOD_KMODS	+= usbwcm
587STRMOD_KMODS	+= usb_ah
588STRMOD_KMODS	+= drcompat
589STRMOD_KMODS	+= cryptmod
590STRMOD_KMODS	+= vuid2ps2
591STRMOD_KMODS	+= vuid3ps2
592STRMOD_KMODS	+= vuidm3p
593STRMOD_KMODS	+= vuidm4p
594STRMOD_KMODS	+= vuidm5p
595
596#
597#	'System' Modules (/kernel/sys):
598#
599SYS_KMODS	+= c2audit
600SYS_KMODS	+= doorfs
601SYS_KMODS	+= exacctsys
602SYS_KMODS	+= inst_sync
603SYS_KMODS	+= kaio
604SYS_KMODS	+= msgsys
605SYS_KMODS	+= pipe
606SYS_KMODS	+= portfs
607SYS_KMODS	+= pset
608SYS_KMODS	+= semsys
609SYS_KMODS	+= shmsys
610SYS_KMODS	+= sysacct
611SYS_KMODS	+= acctctl
612
613#
614#	'Misc' Modules (/kernel/misc)
615#	MISC_KMODS are built both 32-bit and 64-bit
616#	MISC_KMODS_32 are built only 32-bit
617#	MISC_KMODS_64 are built only 64-bit
618#
619MISC_KMODS	+= ac97
620MISC_KMODS	+= acpica
621MISC_KMODS	+= bignum
622MISC_KMODS	+= bootdev
623MISC_KMODS	+= busra
624MISC_KMODS	+= cmlb
625MISC_KMODS	+= consconfig
626MISC_KMODS	+= ctf
627MISC_KMODS	+= dadk
628MISC_KMODS	+= dcopy
629MISC_KMODS	+= dls
630MISC_KMODS	+= fssnap_if
631MISC_KMODS	+= gda
632MISC_KMODS	+= gld
633MISC_KMODS	+= hidparser
634MISC_KMODS	+= hook
635MISC_KMODS	+= hpcsvc
636MISC_KMODS	+= ibcm
637MISC_KMODS	+= ibdm
638MISC_KMODS	+= ibdma
639MISC_KMODS	+= ibmf
640MISC_KMODS	+= ibtl
641MISC_KMODS	+= idm
642MISC_KMODS	+= idmap
643MISC_KMODS	+= iommulib
644MISC_KMODS	+= ipc
645MISC_KMODS	+= kbtrans
646MISC_KMODS	+= kcf
647MISC_KMODS	+= kgssapi
648MISC_KMODS	+= kmech_dummy
649MISC_KMODS	+= kmech_krb5
650MISC_KMODS	+= ksocket
651MISC_KMODS	+= mac
652MISC_KMODS	+= mii
653MISC_KMODS	+= mwlfw
654MISC_KMODS	+= net80211
655MISC_KMODS	+= nfs_dlboot
656MISC_KMODS	+= nfssrv
657MISC_KMODS	+= neti
658MISC_KMODS	+= pci_autoconfig
659MISC_KMODS	+= pcicfg
660MISC_KMODS	+= pcihp
661MISC_KMODS	+= pcmcia
662MISC_KMODS	+= rpcsec
663MISC_KMODS	+= rpcsec_gss
664MISC_KMODS	+= rsmops
665MISC_KMODS	+= sata
666MISC_KMODS	+= scsi
667MISC_KMODS	+= sda
668MISC_KMODS	+= sol_ofs
669MISC_KMODS	+= strategy
670MISC_KMODS	+= strplumb
671MISC_KMODS	+= tem
672MISC_KMODS	+= tlimod
673MISC_KMODS	+= usba usba10 usbs49_fw
674MISC_KMODS	+= scsi_vhci_f_sym_hds
675MISC_KMODS	+= scsi_vhci_f_sym
676MISC_KMODS	+= scsi_vhci_f_tpgs
677MISC_KMODS	+= scsi_vhci_f_tape
678MISC_KMODS	+= scsi_vhci_f_tpgs_tape
679MISC_KMODS	+= fctl
680MISC_KMODS	+= emlxs_fw
681MISC_KMODS	+= qlc_fw_2200
682MISC_KMODS	+= qlc_fw_2300
683MISC_KMODS	+= qlc_fw_2400
684MISC_KMODS	+= qlc_fw_2500
685MISC_KMODS	+= qlc_fw_6322
686MISC_KMODS	+= qlc_fw_8100
687MISC_KMODS	+= uathfw
688
689MISC_KMODS	+= klmmod klmops
690
691#
692#	Software Cryptographic Providers (/kernel/crypto):
693#
694CRYPTO_KMODS	+= aes
695CRYPTO_KMODS	+= arcfour
696CRYPTO_KMODS	+= blowfish
697CRYPTO_KMODS	+= des
698CRYPTO_KMODS	+= ecc
699CRYPTO_KMODS	+= edonr
700CRYPTO_KMODS	+= md4
701CRYPTO_KMODS	+= md5
702CRYPTO_KMODS	+= rsa
703CRYPTO_KMODS	+= sha1
704CRYPTO_KMODS	+= sha2
705CRYPTO_KMODS	+= skein
706CRYPTO_KMODS	+= swrand
707
708#
709#	IP Policy Modules (/kernel/ipp)
710#
711IPP_KMODS	+= dlcosmk
712IPP_KMODS	+= flowacct
713IPP_KMODS	+= ipgpc
714IPP_KMODS	+= dscpmk
715IPP_KMODS	+= tokenmt
716IPP_KMODS	+= tswtclmt
717
718#
719#	generic-unix module (/kernel/genunix):
720#
721GENUNIX_KMODS	+= genunix
722
723#
724#	Modules eXcluded from the product:
725#
726
727#
728#	'Dacf' Modules (/kernel/dacf):
729#
730
731#
732#	Performance Counter BackEnd modules (/usr/kernel/pcbe)
733#
734PCBE_KMODS	+= p4_pcbe opteron_pcbe core_pcbe
735
736#
737#	MAC-Type Plugin Modules (/kernel/mac)
738#
739MAC_KMODS	+= mac_6to4
740MAC_KMODS	+= mac_ether
741MAC_KMODS	+= mac_ipv4
742MAC_KMODS	+= mac_ipv6
743MAC_KMODS	+= mac_wifi
744MAC_KMODS	+= mac_ib
745
746#
747# socketmod (kernel/socketmod)
748#
749SOCKET_KMODS	+= sockpfp
750SOCKET_KMODS	+= socksctp
751SOCKET_KMODS    += socksdp
752SOCKET_KMODS	+= sockrds
753SOCKET_KMODS	+= ksslf
754
755#
756#	kiconv modules (/kernel/kiconv):
757#
758KICONV_KMODS	+= kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc
759
760#
761#	'Dacf' Modules (/kernel/dacf):
762#
763DACF_KMODS	+= net_dacf
764
765#
766# Ensure that the variable member of the cpu_t (cpu_m) is defined
767# for the lint builds so as not to cause lint errors during the
768# global cross check.
769#
770LINTFLAGS	+= -D_MACHDEP -I$(UTSBASE)/i86pc
771
772#
773#	Sensor related drivers
774#
775DRV_KMODS	+= amdf17nbdf
776DRV_KMODS	+= coretemp
777DRV_KMODS	+= pchtemp
778DRV_KMODS	+= amdnbtemp
779