Makefile revision 270061
1# $FreeBSD: stable/10/sys/modules/Makefile 270061 2014-08-16 14:30:46Z bz $
2
3.include <bsd.own.mk>
4
5SUBDIR_PARALLEL=
6
7# Modules that include binary-only blobs of microcode should be selectable by
8# MK_SOURCELESS_UCODE option (see below).
9
10SUBDIR=	\
11	${_3dfx} \
12	${_3dfx_linux} \
13	${_aac} \
14	${_aacraid} \
15	accf_data \
16	accf_dns \
17	accf_http \
18	acl_nfs4 \
19	acl_posix1e \
20	${_acpi} \
21	ae \
22	${_aesni} \
23	age \
24	${_agp} \
25	aha \
26	${_ahb} \
27	ahci \
28	${_aic} \
29	aic7xxx \
30	aio \
31	alc \
32	ale \
33	alq \
34	${_amdsbwd} \
35	${_amdtemp} \
36	amr \
37	${_an} \
38	${_aout} \
39	${_apm} \
40	${_arcmsr} \
41	${_arcnet} \
42	${_asmc} \
43	${_asr} \
44	ata \
45	ath \
46	ath_pci \
47	${_auxio} \
48	${_bce} \
49	bfe \
50	bge \
51	${_bxe} \
52	${_bios} \
53	${_bktr} \
54	${_bm} \
55	bridgestp \
56	bwi \
57	bwn \
58	cam \
59	${_canbepm} \
60	${_canbus} \
61	${_cardbus} \
62	${_carp} \
63	cas \
64	${_cbb} \
65	cc \
66	cd9660 \
67	cd9660_iconv \
68	${_ce} \
69	${_cfi} \
70	${_ciss} \
71	${_cm} \
72	${_cmx} \
73	${_coff} \
74	${_coretemp} \
75	${_cp} \
76	${_cpsw} \
77	${_cpuctl} \
78	${_cpufreq} \
79	${_crypto} \
80	${_cryptodev} \
81	${_cs} \
82	${_ct} \
83	${_ctau} \
84	ctl \
85	${_cxgb} \
86	${_cxgbe} \
87	${_cyclic} \
88	dc \
89	dcons \
90	dcons_crom \
91	de \
92	${_dpms} \
93	${_dpt} \
94	${_drm} \
95	${_drm2} \
96	${_dtrace} \
97	dummynet \
98	${_ed} \
99	${_elink} \
100	${_em} \
101	en \
102	${_ep} \
103	${_epic} \
104	esp \
105	${_et} \
106	${_ex} \
107	${_exca} \
108	${_ext2fs} \
109	${_fatm} \
110	fdc \
111	fdescfs \
112	${_fe} \
113	${_filemon} \
114	firewire \
115	firmware \
116	fuse \
117	${_fxp} \
118	gem \
119	geom \
120	${_glxiic} \
121	${_glxsb} \
122	hatm \
123	hifn \
124	hme \
125	${_hpt27xx} \
126	${_hptiop} \
127	${_hptmv} \
128	${_hptnr} \
129	${_hptrr} \
130	hwpmc \
131	${_hyperv} \
132	${_i2c} \
133        ${_ibcore} \
134	${_ibcs2} \
135	${_ichwd} \
136	${_ida} \
137	${_ie} \
138	if_bridge \
139	if_disc \
140	if_edsc \
141	if_ef \
142	if_epair \
143	if_faith \
144	if_gif \
145	${_if_gre} \
146	if_lagg \
147	${_if_ndis} \
148	if_stf \
149	if_tap \
150	if_tun \
151	if_vlan \
152	${_igb} \
153	${_iir} \
154	${_imgact_binmisc} \
155	${_io} \
156        ${_ipoib} \
157	${_ipdivert} \
158	${_ipfilter} \
159	${_ipfw} \
160	ipfw_nat \
161	${_ipmi} \
162	ip6_mroute_mod \
163	ip_mroute_mod \
164	${_ips} \
165	${_ipw} \
166	${_ipwfw} \
167	${_isci} \
168	iscsi \
169	iscsi_initiator \
170	isp \
171	${_ispfw} \
172	${_iwi} \
173	${_iwifw} \
174	${_iwn} \
175	${_iwnfw} \
176	${_ixgb} \
177	${_ixgbe} \
178	jme \
179	joy \
180	kbdmux \
181	kgssapi \
182	kgssapi_krb5 \
183	khelp \
184	krpc \
185	ksyms \
186	le \
187	lge \
188	libalias \
189	libiconv \
190	libmbpool \
191	libmchain \
192	${_lindev} \
193	${_linprocfs} \
194	${_linsysfs} \
195	${_linux} \
196	lmc \
197	lpt \
198	mac_biba \
199	mac_bsdextended \
200	mac_ifoff \
201	mac_lomac \
202	mac_mls \
203	mac_none \
204	mac_partition \
205	mac_portacl \
206	mac_seeotheruids \
207	mac_stub \
208	mac_test \
209	malo \
210	mcd \
211	md \
212	mem \
213	mfi \
214	mii \
215	mlx \
216	${_mlx4} \
217	${_mlx4ib} \
218	${_mlxen} \
219	${_mly} \
220	mmc \
221	mmcsd \
222	mpr \
223	mps \
224	mpt \
225	mqueue \
226	mrsas \
227	msdosfs \
228	msdosfs_iconv \
229	${_mse} \
230	msk \
231	${_mthca} \
232	mvs \
233	mwl \
234	${_mwlfw} \
235	mxge \
236	my \
237	${_nandfs} \
238	${_nandsim} \
239	${_ncp} \
240	${_ncv} \
241	${_ndis} \
242	netfpga10g \
243	${_netgraph} \
244	${_nfe} \
245	nfs_common \
246	nfscl \
247	nfsclient \
248	nfscommon \
249	nfsd \
250	nfslock \
251	nfslockd \
252	nfsserver \
253	nfssvc \
254	nge \
255	nmdm \
256	${_nsp} \
257	nullfs \
258	${_ntb} \
259	${_nvd} \
260	${_nve} \
261	${_nvme} \
262	${_nvram} \
263	${_nxge} \
264	${_opensolaris} \
265	oce \
266	${_padlock} \
267	patm \
268	${_pccard} \
269	${_pcfclock} \
270	pcn \
271	${_pf} \
272	${_pflog} \
273	${_pfsync} \
274	plip \
275	${_pmc} \
276	ppbus \
277	ppc \
278	ppi \
279	pps \
280	procfs \
281	pseudofs \
282	${_pst} \
283	pty  \
284	puc \
285	${_qlxge} \
286	${_qlxgb} \
287	${_qlxgbe} \
288	ral \
289	${_ralfw} \
290	${_random} \
291	rc4 \
292	${_rdma} \
293	re \
294	reiserfs \
295	rl \
296	${_s3} \
297	${_safe} \
298	${_sbni} \
299	scc \
300	scd \
301	${_scsi_low} \
302	sdhci \
303	sdhci_pci \
304	sem \
305	send \
306	${_sf} \
307	${_sfxge} \
308	sge \
309	siba_bwn \
310	siftr \
311	siis \
312	sis \
313	sk \
314	${_smbfs} \
315	${_sn} \
316	${_snc} \
317	snp \
318	${_sound} \
319	${_speaker} \
320	${_splash} \
321	${_sppp} \
322	ste \
323	${_stg} \
324	stge \
325	${_streams} \
326	${_svr4} \
327	${_sym} \
328	${_syscons} \
329	sysvipc \
330	${_ti} \
331	tl \
332	tmpfs \
333	${_toecore} \
334	${_tpm} \
335	trm \
336	${_twa} \
337	twe \
338	tws \
339	tx \
340	${_txp} \
341	uart \
342	ubsec \
343	udf \
344	udf_iconv \
345	ufs \
346	unionfs \
347	usb \
348	utopia \
349	${_vesa} \
350	${_virtio} \
351	vge \
352	${_viawd} \
353	vkbd \
354	${_vmm} \
355	${_vmware} \
356	${_vpo} \
357	vr \
358	vte \
359	vx \
360	${_vxge} \
361	wb \
362	${_wbwd} \
363	${_wi} \
364	wlan \
365	wlan_acl \
366	wlan_amrr \
367	wlan_ccmp \
368	wlan_rssadapt \
369	wlan_tkip \
370	wlan_wep \
371	wlan_xauth \
372	${_wpi} \
373	${_wpifw} \
374	${_x86bios} \
375	${_xe} \
376	xl \
377	${_zfs} \
378	zlib \
379
380.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
381_filemon=	filemon
382_imgact_binmisc=	imgact_binmisc
383_vmware=	vmware
384.endif
385
386.if ${MACHINE_CPUARCH} != "powerpc" && ${MACHINE_CPUARCH} != "arm" && \
387	${MACHINE_CPUARCH} != "mips"
388_syscons=	syscons
389_vpo=		vpo
390.endif
391
392.if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips"
393# no BUS_SPACE_UNSPECIFIED
394# No barrier instruction support (specific to this driver)
395_sym=		sym
396# intr_disable() is a macro, causes problems
397.if ${MK_SOURCELESS_UCODE} != "no"
398_cxgb=		cxgb
399.endif
400.endif
401
402.if ${MK_SOURCELESS_UCODE} != "no"
403_cxgbe=		cxgbe
404.endif
405
406.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
407.if exists(${.CURDIR}/../opencrypto)
408_crypto=	crypto
409_cryptodev=	cryptodev
410.endif
411.if exists(${.CURDIR}/../crypto)
412_random=	random
413.endif
414.endif
415
416.if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \
417	defined(ALL_MODULES)
418_carp=	carp
419_toecore=	toecore
420.endif
421
422.if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES)
423_if_gre=	if_gre
424.endif
425
426.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES)
427_ipfilter=	ipfilter
428.endif
429
430.if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES)
431_ipdivert=	ipdivert
432_ipfw=		ipfw
433.endif
434
435.if ${MK_NAND} != "no" || defined(ALL_MODULES)
436_nandfs=	nandfs
437_nandsim=	nandsim
438.endif
439
440.if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES)
441_netgraph=	netgraph
442.endif
443
444.if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \
445	${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES)
446_pf=		pf
447_pflog=		pflog
448.if ${MK_INET_SUPPORT} != "no"
449_pfsync=	pfsync
450.endif
451.endif
452
453.if ${MK_SOURCELESS_UCODE} != "no"
454_bce=		bce
455_fatm=		fatm
456_fxp=		fxp
457_ispfw=		ispfw
458_mwlfw=		mwlfw
459_ralfw=		ralfw
460_sf=		sf
461_sn=		sn
462_ti=		ti
463_txp=		txp
464.endif
465
466.if ${MACHINE_CPUARCH} == "i386"
467# XXX some of these can move to the general case when de-i386'ed
468# XXX some of these can move now, but are untested on other architectures.
469_3dfx=		3dfx
470_3dfx_linux=	3dfx_linux
471_agp=		agp
472_aic=		aic
473_an=		an
474_aout=		aout
475_apm=		apm
476_arcnet=	arcnet
477_bktr=		bktr
478_bxe=		bxe
479_cardbus=	cardbus
480_cbb=		cbb
481.if ${MK_SOURCELESS_UCODE} != "no"
482_ce=		ce
483.endif
484_coff=		coff
485.if ${MK_SOURCELESS_UCODE} != "no"
486_cp=		cp
487.endif
488_cpuctl=	cpuctl
489_cpufreq=	cpufreq
490_cs=		cs
491.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
492_cyclic=	cyclic
493.endif
494_dpms=		dpms
495_drm=		drm
496_drm2=		drm2
497.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
498_dtrace=	dtrace
499.endif
500_ed=		ed
501_elink=		elink
502_em=		em
503_ep=		ep
504_et=		et
505_exca=		exca
506_ext2fs=	ext2fs
507_fe=		fe
508_glxiic=	glxiic
509_glxsb=		glxsb
510_i2c=		i2c
511.if ${MK_OFED} != "no" || defined(ALL_MODULES)
512_ibcore=        ibcore
513.endif
514_ibcs2=		ibcs2
515_ie=		ie
516_if_ndis=	if_ndis
517_igb=		igb
518_io=		io
519.if ${MK_OFED} != "no" || defined(ALL_MODULES)
520_ipoib=         ipoib
521.endif
522_lindev=	lindev
523_linprocfs=	linprocfs
524_linsysfs=	linsysfs
525_linux=		linux
526_mse=		mse
527.if ${MK_OFED} != "no" || defined(ALL_MODULES)
528_mlx4=		mlx4
529_mlx4ib=	mlx4ib
530_mlxen=		mlxen
531_mthca=		mthca
532.endif
533_ncv=		ncv
534_ndis=		ndis
535_nsp=		nsp
536.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
537_opensolaris=	opensolaris
538.endif
539_pccard=	pccard
540_pcfclock=	pcfclock
541_pst=		pst
542_rdma=		rdma
543_safe=		safe
544_sbni=		sbni
545_scsi_low=	scsi_low
546_smbfs=		smbfs
547_sound=		sound
548_speaker=	speaker
549_splash=	splash
550_sppp=		sppp
551_stg=		stg
552_streams=	streams
553_svr4=		svr4
554_vxge=  	vxge
555_wbwd=		wbwd
556_wi=		wi
557_xe=		xe
558.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
559_zfs=		zfs
560.endif
561.if ${MACHINE} == "i386"
562_aac=		aac
563_aacraid=	aacraid
564_acpi=		acpi
565.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
566_aesni=		aesni
567.endif
568_ahb=		ahb
569_amdsbwd=	amdsbwd
570_amdtemp=	amdtemp
571_arcmsr=	arcmsr
572_asmc=		asmc
573_asr=		asr
574_bios=		bios
575_ciss=		ciss
576_cm=		cm
577_cmx=		cmx
578_coretemp=	coretemp
579.if ${MK_SOURCELESS_UCODE} != "no"
580_ctau=		ctau
581.endif
582_dpt=		dpt
583_ex=		ex
584.if ${MK_SOURCELESS_HOST} != "no"
585_hpt27xx=	hpt27xx
586.endif
587_hptiop=	hptiop
588.if ${MK_SOURCELESS_HOST} != "no"
589_hptmv=		hptmv
590_hptnr=		hptnr
591_hptrr=		hptrr
592.endif
593_hyperv=	hyperv
594_ichwd=		ichwd
595_ida=		ida
596_iir=		iir
597_ipmi=		ipmi
598_ips=		ips
599_ipw=		ipw
600.if ${MK_SOURCELESS_UCODE} != "no"
601_ipwfw=		ipwfw
602.endif
603_isci=		isci
604_iwi=		iwi
605.if ${MK_SOURCELESS_UCODE} != "no"
606_iwifw=		iwifw
607.endif
608_iwn=		iwn
609.if ${MK_SOURCELESS_UCODE} != "no"
610_iwnfw=		iwnfw
611.endif
612_ixgb=		ixgb
613_ixgbe=		ixgbe
614_mly=		mly
615_nfe=		nfe
616_nvd=		nvd
617.if ${MK_SOURCELESS_HOST} != "no"
618_nve=		nve
619.endif
620_nvme=		nvme
621_nvram=		nvram
622_nxge=		nxge
623_tpm=		tpm
624_viawd=		viawd
625_wpi=		wpi
626.if ${MK_SOURCELESS_UCODE} != "no"
627_wpifw=		wpifw
628.endif
629.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
630_padlock=	padlock
631.endif
632_s3=		s3
633_twa=		twa
634_vesa=		vesa
635_virtio=	virtio
636_x86bios=	x86bios
637.elif ${MACHINE} == "pc98"
638_canbepm=	canbepm
639_canbus=	canbus
640_ct=		ct
641_pmc=		pmc
642_snc=		snc
643.endif
644.endif
645
646.if ${MACHINE_CPUARCH} == "amd64"
647_aac=		aac
648_aacraid=	aacraid
649_aout=		aout
650_acpi=		acpi
651.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
652_aesni=		aesni
653.endif
654_agp=		agp
655_an=		an
656_amdsbwd=	amdsbwd
657_amdtemp=	amdtemp
658_arcmsr=	arcmsr
659_asmc=		asmc
660_bktr=		bktr
661_bxe=		bxe
662_cardbus=	cardbus
663_cbb=		cbb
664_cmx=		cmx
665_ciss=		ciss
666_coretemp=	coretemp
667_cpuctl=	cpuctl
668_cpufreq=	cpufreq
669.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
670_cyclic=	cyclic
671.endif
672_dpms=		dpms
673_drm=		drm
674_drm2=		drm2
675.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
676_dtrace=	dtrace
677.endif
678_ed=		ed
679_et=		et
680_em=		em
681_exca=		exca
682_ext2fs=	ext2fs
683.if ${MK_SOURCELESS_HOST} != "no"
684_hpt27xx=	hpt27xx
685.endif
686_hptiop=	hptiop
687.if ${MK_SOURCELESS_HOST} != "no"
688_hptmv=		hptmv
689_hptnr=		hptnr
690_hptrr=		hptrr
691.endif
692_hyperv=	hyperv
693_i2c=		i2c
694.if ${MK_OFED} != "no" || defined(ALL_MODULES)
695_ibcore=        ibcore
696.endif
697_ichwd=		ichwd
698_ida=		ida
699_if_ndis=	if_ndis
700_igb=		igb
701_iir=		iir
702_io=		io
703_ipmi=		ipmi
704.if ${MK_OFED} != "no" || defined(ALL_MODULES)
705_ipoib=         ipoib
706.endif
707_ips=		ips
708_ipw=		ipw
709.if ${MK_SOURCELESS_UCODE} != "no"
710_ipwfw=		ipwfw
711.endif
712_isci=		isci
713_iwi=		iwi
714.if ${MK_SOURCELESS_UCODE} != "no"
715_iwifw=		iwifw
716.endif
717_iwn=		iwn
718.if ${MK_SOURCELESS_UCODE} != "no"
719_iwnfw=		iwnfw
720.endif
721_ixgb=		ixgb
722_ixgbe=		ixgbe
723_lindev=	lindev
724_linprocfs=	linprocfs
725_linsysfs=	linsysfs
726_linux=		linux
727_mly=		mly
728.if ${MK_OFED} != "no" || defined(ALL_MODULES)
729_mlx4=		mlx4
730_mlx4ib=	mlx4ib
731_mlxen=		mlxen
732_mthca=		mthca
733.endif
734_ndis=		ndis
735_nfe=		nfe
736_ntb=		ntb
737_nvd=		nvd
738.if ${MK_SOURCELESS_HOST} != "no"
739_nve=		nve
740.endif
741_nvme=		nvme
742_nvram=		nvram
743_nxge=		nxge
744.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
745_opensolaris=	opensolaris
746.endif
747.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
748_padlock=	padlock
749.endif
750_pccard=	pccard
751_qlxge=		qlxge
752_qlxgb=		qlxgb
753_qlxgbe=	qlxgbe
754_rdma=		rdma
755_s3=		s3
756_safe=		safe
757_scsi_low=	scsi_low
758_sfxge=		sfxge
759_smbfs=		smbfs
760_sound=		sound
761_speaker=	speaker
762_splash=	splash
763_sppp=		sppp
764_tpm=		tpm
765_twa=		twa
766_vesa=		vesa
767_viawd=		viawd
768_virtio=	virtio
769_vmm=		vmm
770_vxge=  	vxge
771_x86bios=	x86bios
772_wbwd=		wbwd
773_wi=		wi
774_wpi=		wpi
775.if ${MK_SOURCELESS_UCODE} != "no"
776_wpifw=		wpifw
777.endif
778.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
779_zfs=		zfs
780.endif
781.endif
782
783.if ${MACHINE_CPUARCH} == "arm"
784_cfi=		cfi
785_cpsw=		cpsw
786.endif
787
788.if ${MACHINE_CPUARCH} == "ia64"
789_aac=		aac
790_aacraid=	aacraid
791_aic=		aic
792_an=		an
793_arcnet=	arcnet
794_asr=		asr
795_bktr=		bktr
796_cardbus=	cardbus
797_cbb=		cbb
798_ciss=		ciss
799_cm=		cm
800_cmx=		cmx
801_coff=		coff
802_cpufreq=	cpufreq
803_dpt=		dpt
804_em=		em
805_ep=		ep
806_et=		et
807_exca=		exca
808_fe=		fe
809_hptiop=	hptiop
810_ida=		ida
811_igb=		igb
812_iir=		iir
813_ips=		ips
814_mly=		mly
815_pccard=	pccard
816_scsi_low=	scsi_low
817_smbfs=		smbfs
818_sound=		sound
819_splash=	splash
820_sppp=		sppp
821_streams=	streams
822_tpm=		tpm
823_twa=		twa
824_wi=		wi
825_xe=		xe
826.endif
827
828.if ${MACHINE_CPUARCH} == "powerpc"
829_agp=		agp
830_an=		an
831_bm=		bm
832_cardbus=	cardbus
833_cbb=		cbb
834_cfi=		cfi
835_cpufreq=	cpufreq
836.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
837_cyclic=	cyclic
838.endif
839_drm=		drm
840.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
841_dtrace=	dtrace
842.endif
843_exca=		exca
844_nvram=		powermac_nvram
845_pccard=	pccard
846_smbfs=		smbfs
847_sound=		sound
848.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
849_opensolaris=	opensolaris
850.endif
851_wi=		wi
852.endif
853
854.if ${MACHINE_ARCH} == "powerpc64"
855.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
856_zfs=		zfs
857.endif
858.endif
859
860.if ${MACHINE_CPUARCH} == "sparc64"
861_auxio=		auxio
862_em=		em
863_epic=		epic
864_i2c=		i2c
865_igb=		igb
866.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
867_opensolaris=	opensolaris
868.endif
869_smbfs=		smbfs
870_sound=		sound
871.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
872_zfs=		zfs
873.endif
874.endif
875
876.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
877SUBDIR=${MODULES_OVERRIDE}
878.endif
879
880.for reject in ${WITHOUT_MODULES}
881SUBDIR:= ${SUBDIR:N${reject}}
882.endfor
883
884# Calling kldxref(8) for each module is expensive.
885.if !defined(NO_XREF)
886.MAKEFLAGS+=	-DNO_XREF
887afterinstall:
888	@if type kldxref >/dev/null 2>&1; then \
889		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
890		kldxref ${DESTDIR}${KMODDIR}; \
891	fi
892.endif
893
894.include <bsd.subdir.mk>
895