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